zoukankan      html  css  js  c++  java
  • JDBC模拟用户登录

    代码:

    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Scanner;
    
    /*
    * 使用prepareStatement
    * */
    public class Demo2Test {
        public static void main(String[] args) throws SQLException {
            //从控制台输入用户名和密码
            Scanner sc=new Scanner(System.in);
            System.out.println("请输入用户名");
            String name= sc.nextLine();
            System.out.println("请输入密码");
            String password=sc.nextLine();
            //登陆的方法
            login(name ,password);
        }
        private  static void login(String name,String password) throws SQLException {
            Connection conn = JdbcUtils.getConnection();
            //编写sql语句,未知内容使用?占位符;   用户名       密码
            String s = "select * from user3 where sname=? and sid=?";
            //获得PreparedStatement对象
            PreparedStatement ps = conn.prepareStatement(s);
            //设置实际的参数,setxxx(占位符的位置,真实的值)
            ps.setString(1,name);
            ps.setString(2,password);
            //执行sql语句
            ResultSet re =ps.executeQuery();
            if (re.next()){
                System.out.println("登陆成功");
            }else {
                System.out.println("登录失败");
            }
            //关闭资源
            JdbcUtils.close(re,ps,conn);
        }
    }

    工具类:

    import java.sql.*;
    
    /*
    * 访问数据库工具类
    * */
    public class JdbcUtils {
        //把几个字符串定义成常量
        private static  final String USER="root";
        private static  final String PWD="root";
        private static  final String URl="jdbc:mysql://localhost:3306/day97";
        private static final String DRIVER="com.mysql.jdbc.Driver";
        static {
            try {
                //注册驱动
                Class.forName(DRIVER);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
        //得到数据库连接
        public static Connection getConnection() throws SQLException {
            return DriverManager.getConnection(URl,USER,PWD);
        }
        //关闭连接、执行的打开资源
        public static  void close(Connection connection, Statement statement){
            if (statement!=null){
                try {
                    statement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (connection!=null){
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
        //关闭所有打开资源
        public  static  void close(ResultSet resultSet, Statement statement, Connection connection){
            if (resultSet!=null){
                try {
                    resultSet.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
    
            }
            if (statement!=null){
                try {
                   statement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (connection!=null){
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
        //关闭资源
        public static  void close(PreparedStatement preparedStatement, Connection connection) {
            if (preparedStatement != null) {
                try {
                    preparedStatement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (connection != null) {
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
  • 相关阅读:
    Scala学习笔记——断言和单元测试
    Spark学习笔记——读写Hbase
    Spark学习笔记——读写HDFS
    Scala学习笔记——简化代码、柯里化、继承、特质
    Spark学习笔记——读写MySQL
    Hbase学习笔记——基本CRUD操作
    Spark学习笔记——在集群上运行Spark
    IDEA启动Tomcat服务器时某些端口(如1099端口)被占用的解决办法
    ResultMap和ResultType在使用中的区别、MyBatis中Mapper的返回值类型
    java中的stream的Map收集器操作
  • 原文地址:https://www.cnblogs.com/duguangming/p/10651538.html
Copyright © 2011-2022 走看看