JDBC练习

需求:

1.通过键盘录入用户名密码

2.判断用户是否封路成功(查表)

步骤:

1.创建数据库表

CREATE TABLE USER(
    id INT PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(32),
    PASSWORD VARCHAR(32)
    
 );
 
 SELECT *FROM USER;
 INSERT INTO USER VALUES(NULL,'zhangsan','123');
 INSERT INTO USER VALUES(NULL,'lisi','234')

2.编码

//需求:
//
//        1.通过键盘录入用户名密码
//
//        2.判断用户是否封路成功(查表)

package cn.itcast.jdbc;

import java.sql.*;
import java.util.Scanner;

public class jdbc {
    public static void main(String[] args) {
        //1.键盘录入
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入用户名:");
        String username=sc.nextLine();
        System.out.println("请输入密码:");
        String password=sc.nextLine();
        boolean flag=new jdbc().login2(username,password);
        if(flag){
            System.out.println("登陆成功");
        }else {
            System.out.println("用户名密码不正确");
        }




        //2.调用方法
    }
    //登录方法(需要返回值)
    public boolean login(String username,String password){
        if(username ==null || password ==null){
            System.out.println("用户名或者密码为空!!!");
            return false;
        }
        Connection conn=null;
        Statement stmt=null;
        ResultSet rs =null;

        //1.获取数据库连接
        try {
            conn =JDBCUtils.getConnection();
            //定义sql
            String sql = "select * from user where username='" +username+ " ' and password='"+password+"'";
            //获取对象
            stmt=conn.createStatement();
            //执行查询
            rs=stmt.executeQuery(sql);
            //判断
//            if(rs.next()){
//                return true;
//            }else{
//                return false;
//            }
            return rs.next();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }finally {
            JDBCUtils.close(rs,stmt,conn);

        }
        return false;
    }

    public boolean login2(String username,String password){
        if(username ==null || password ==null){
            System.out.println("用户名或者密码为空!!!");
            return false;
        }
        Connection conn=null;
        PreparedStatement pstmt=null;
        ResultSet rs =null;

        //1.获取数据库连接
        try {
            conn =JDBCUtils.getConnection();
            //定义sql
            String sql = "select * from user where username=? and password=?";
            //获取对象
            pstmt=conn.prepareStatement(sql);
            //执行查询
            pstmt.setString(1,username);
            pstmt.setString(2,password);
            rs=pstmt.executeQuery();

            //判断
//            if(rs.next()){
//                return true;
//            }else{
//                return false;
//            }
            return rs.next();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }finally {
            JDBCUtils.close(rs,pstmt,conn);

        }
        return false;
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_47560260/article/details/108994328
今日推荐