java-JDBC登录注册代码

Posted 易小川

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java-JDBC登录注册代码相关的知识,希望对你有一定的参考价值。

登录:

public static void main(String[] args) throws Exception{
        Scanner sc = new Scanner(System.in);
        System.out.println("账号:");
        String uid = sc.nextLine();
        System.out.println("密码:");
        String pwd = sc.nextLine();
        
        Class.forName("com.mysql.jdbc.Driver");
        
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root","");
        String sql = "select * from users where user = ? and password = ?";
        PreparedStatement ps = conn.prepareStatement(sql);
        ps.setString(1, uid);
        ps.setString(2, pwd);
        ResultSet rs = ps.executeQuery();
        boolean ok = rs.next();
        if(ok){
            System.out.println("欢迎"+rs.getString(3)+"回来");
        }
        else
        {
            System.out.println("您输入的账号密码有误");
        }
        }

这是一个简单的通过输入数据跟数据库的数据比较来完成登录验证。这里用的是PreparedStatement

PreparedStatement 与Statement 的区别

1  有安全性

    PreparedStatement 可以由于不是使用拼接,防止了sql注入,提高了安全性。

2  更方便

    PreparedStatement 可以自动对类型进行转换,代码可读性,可维护性提高。

 

3  批处理

   PreparedStatement 有预编译功能,大批量的处理sql效率更高。(MySQL 不明显,Oracle 非常明显)

 

注册:

public static void main (String[] args) throws Exception{
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入账号");
        String uid = sc.nextLine();
        System.out.println("请输入密码");
        String pwd = sc.nextLine();
        System.out.println("请输入昵称");
        String nc = sc.nextLine();
        
        Class.forName("com.mysql.jdbc.Driver");
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?characterEncoding=GBK","root","");
        String sql =  "insert into users values (?,?,?)";
        
        PreparedStatement ps = conn.prepareStatement(sql);
        ps.setString(1, uid);
        ps.setString(2, pwd);
        ps.setString(3, nc);
        ps.executeUpdate();
        conn.close();
        
        
        
    }

 

以上是关于java-JDBC登录注册代码的主要内容,如果未能解决你的问题,请参考以下文章

PHP注册与登录用户注册

JAVA-JDBC

带有固定按钮的片段

碎片一个接一个

java-JDBC从数据库中读取数据并进行日期民族男女的转换

片段无法转换为 java.util.concurrent.Executor 错误