1.JDBC模拟用户登录
public class Test01 {
public static void main(String[] args) {
Map<String,String> user = login();
boolean LoginSuccess = test(user);
System.out.println(LoginSuccess?"登录成功":"登录失败");
}
private static boolean test(Map<String, String> user) {
boolean LoginSuccess = false;
String username = user.get("username");
String password = user.get("password");
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
conn = DBUtil.getConnection();
String sql = "select * from t_user where LoginName = ? and LoginPwd = ?";
ps = conn.prepareStatement(sql);
ps.setString(1,username);
ps.setString(2,password);
rs = ps.executeQuery();
if (rs.next()){
LoginSuccess = true;
}
} catch (SQLException throwables) {
throwables.printStackTrace();
} finally {
DBUtil.close(conn,ps,rs);
}
return LoginSuccess;
}
private static Map<String, String> login() {
Scanner s = new Scanner(System.in);
System.out.println("欢迎来到本系统");
System.out.println("请输入登录账号");
Map<String, String> user = new HashMap<>();
String username = s.nextLine();
System.out.println("请输入密码");
String password = s.nextLine();
user.put("username",username);
user.put("password",password);
return user;
}
}
2.工具类简化JDBC编程
public class DBUtil {
private DBUtil(){}
static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static Connection getConnection() throws SQLException {
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/user","root","123");
return conn;
}
public static void close(Connection conn, Statement ps,ResultSet rs){
if (rs != null) {
try {
rs.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (ps != null) {
try {
ps.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}