整合代码
登录
package com.xdw.firstapp;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.app.Activity;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MainActivity extends Activity {
private Button bt;
private Button bt1;
private int flag=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bt=(Button)findViewById(R.id.button2);
Button bt1=(Button)findViewById(R.id.button);
//注意,创建button对象时3.0之前的android studio需要强转类型
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,register.class);
//创建Intent对象,Intent用于各组件之间通讯构造方法的参数
//第一个参数是当前activity.this
//第二个参数是要跳转的界面对应的activity.class
startActivity(intent);
//启动
finish();
//最后记得关掉这个activity否则内存越占越多
}
});
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String username=((EditText)findViewById(R.id.editText)).getText().toString();
final String password=((EditText)findViewById(R.id.editText2)).getText().toString();
//数据库
new Thread() {
public void run() {
try {
Class.forName("com.mysql.jdbc.Driver");//动态加载类
String url = "jdbc:mysql://192.168.1.105:3306/jiaoli";
//上面语句中 mysql://mysql.lianfangti.top为你的mysql服务器地址 3306为端口号 public是你的数据库名 根据你的实际情况更改
Connection conn = DriverManager.getConnection(url, "root", "root");
//使用 DriverManger.getConnection链接数据库 第一个参数为连接地址 第二个参数为用户名 第三个参数为连接密码 返回一个Connection对象
if (conn != null) { //判断 如果返回不为空则说明链接成功 如果为null的话则连接失败 请检查你的 mysql服务器地址是否可用 以及数据库名是否正确 并且 用户名跟密码是否正确
Log.d("调试", "连接成功");
Statement stmt = conn.createStatement(); //根据返回的Connection对象创建 Statement对象
//1.改sql语句
ResultSet rs = stmt.executeQuery("select * from androiduser");
while (rs.next()) {
if (rs.getString("username").equals(username))
if (rs.getString("password").equals(password)) {
flag = 1;
}
}
} else {
Log.d("调试", "连接失败");
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}.start();
//数据库
if(flag==1){
Intent intent = new Intent(MainActivity.this,register.class);
//创建Intent对象,Intent用于各组件之间通讯构造方法的参数
//第一个参数是当前activity.this
//第二个参数是要跳转的界面对应的activity.class
startActivity(intent);
//启动
finish();
//最后记得关掉这个activity否则内存越占越多
}
if(flag==0){
Toast.makeText(MainActivity.this, "请输入正确的账号密码!", Toast.LENGTH_LONG).show();
}
}
});
}
}
注册
package com.xdw.firstapp;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;
import android.app.Activity;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.BreakIterator;
public class register extends Activity{
String str="";
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.register);
//按钮监听数据
RadioGroup sex=(RadioGroup)findViewById(R.id.radioGroup);
sex.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener(){
public void onCheckedChanged(RadioGroup group,int checkedId){
RadioButton r=(RadioButton)findViewById(checkedId);
str=r.getText().toString();
Log.d("调试", str);
}
});
//注意,创建button对象时3.0之前的android studio需要强转类型
Button bt1=(Button)findViewById(R.id.button3);
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String username=((EditText)findViewById(R.id.editText0)).getText().toString();
final String password=((EditText)findViewById(R.id.editText1)).getText().toString();
final String email=((EditText)findViewById(R.id.editText2)).getText().toString();
final String password1=((EditText)findViewById(R.id.editText3)).getText().toString();
final String phone=((EditText)findViewById(R.id.editText4)).getText().toString();
final String college=((EditText)findViewById(R.id.editText5)).getText().toString();
Log.d("调试", username);
Log.d("调试", password);
Log.d("调试", phone);
Log.d("调试", college);
if(password.equals(password1)){
Toast.makeText(register.this, "请输入正确的账号密码!", Toast.LENGTH_LONG).show();
//连接数据库
new Thread() {
public void run() {
try {
Class.forName("com.mysql.jdbc.Driver");//动态加载类
String url = "jdbc:mysql://192.168.1.105:3306/jiaoli";
//上面语句中 mysql://mysql.lianfangti.top为你的mysql服务器地址 3306为端口号 public是你的数据库名 根据你的实际情况更改
Connection conn = DriverManager.getConnection(url, "root", "root");
//使用 DriverManger.getConnection链接数据库 第一个参数为连接地址 第二个参数为用户名 第三个参数为连接密码 返回一个Connection对象
if (conn != null) { //判断 如果返回不为空则说明链接成功 如果为null的话则连接失败 请检查你的 mysql服务器地址是否可用 以及数据库名是否正确 并且 用户名跟密码是否正确
Log.d("调试", "连接成功");
Statement stmt = conn.createStatement(); //根据返回的Connection对象创建 Statement对象
String sql = "INSERT INTO androiduser(username,password,sex,email,phone,college) VALUES (?,?,?,?,?,?)"; //要执行的sql语句
PreparedStatement ps = conn.prepareStatement(sql); //使用executeQury方法执行sql语句 返回ResultSet对象 即查询的结果
ps.setString(1, username);
ps.setString(2, password);
ps.setString(3, str);
ps.setString(4, email);
ps.setString(5, phone);
ps.setString(6, college);
int row = ps.executeUpdate();
//
if (row > 0)
//
Log.d("调试", String.valueOf(row));
Log.d("调试", "连接成功1111");
} else {
Log.d("调试", "连接失败");
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}.start();
}
else{
Toast.makeText(register.this, "两次密码不一致", Toast.LENGTH_LONG).show();
}
}
});
}
}