综合案例【登录】
1.1 创建表
- 创建一张用户表 User
- id ,主键、自动增长。
- 用户名,字符串类型,唯一、非空
- 密码,字符串类型,非空
- 手机号码,字符串类型
- 插入 2 条测试语句
create table user(
-> id int primary key auto_increment,
-> name varchar(10) unique not null,
-> pwd varchar(20) not null,
-> number varchar(10)
);
insert into user values(null,'李四','123','1478517');
insert into user values(null,'张三','123','1478517');
1.2 实现登录
- 通过控制台用户输入用户名和密码。
- 用户输入的用户名和密码作为条件,编写查询 SQL 语句。
- 如果该用户存在,提示登录成功,反之提示失败。
public class userTest {
/**
* - 通过控制台用户输入用户名和密码。
* - 用户输入的用户名和密码作为条件,编写查询 SQL 语句。
* - 如果该用户存在,提示登录成功,反之提示失败。
*/
private static String url = "jdbc:mysql://localhost:3306/qianfeng";
private static String username= "root";
private static String userpwd= "123456";
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Scanner scan = new Scanner(System.in);
System.out.println("请输入用户账号:");
String uname = scan.next();
System.out.println("请输入用户密码:");
String upwd = scan.next();
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, username, userpwd);
//4.执行SQL语句,并接收结果
String sql = "select * from user where name=? and pwd = ?; ";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1,uname);
ps.setString(2,upwd);
ResultSet rs = ps.executeQuery();
if(rs.next()){
System.out.println("sussess!");
}else{
System.out.println("fail!");
}
ps.close();
conn.close();
}
}