“使用DBUtil工具类维护数据库的连接,要求用户通过Scanner输入用户名,然后能通过数据库查询该用户的信息,如果查询到信息,则在控制台显示出来,如果未查到,则提示'查无此人'”这个程序怎么写?

解决方案 »

  1.   

    记得结贴给分package eg4;import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Scanner;import utils.JDBCUtils;public class Test2 { public static void main(String[] args) throws SQLException {
    @SuppressWarnings("resource")
    Scanner sc=new Scanner(System.in);
    System.out.println("请输入用户名");
    String name=sc.next();
    Connection conn = JDBCUtils.getConnection();
    String sql = "select * from user where username=?";
    PreparedStatement pst = conn.prepareStatement(sql);
    pst.setString(1, name);
    ResultSet rs = pst.executeQuery();
    if (rs.first()) {
    rs.beforeFirst();
    while (rs.next()) {
            System.out.println("id: " + rs.getInt("id"));
            System.out.println("username: " + rs.getString("username"));
            System.out.println("password: " + rs.getString("password"));
        }
    }else {
    System.out.println("查无此人");
    }
    pst.close();
    conn.close();
    }
    }
    package utils;import java.sql.Connection;
    import java.sql.DriverManager;public class JDBCUtils { // 数据库地址
    private static String dbUrl = "jdbc:mysql://localhost:3306/demo?characterEncoding=utf8&useSSL=false";
    // 用户名
    private static String dbUserName = "root";
    // 密码
    private static String dbPassword = "123456";
    // 驱动名称
    private static String jdbcName = "com.mysql.jdbc.Driver"; // static{} // 获取数据库连接对象
    public static Connection getConnection() {
    Connection conn = null;
    try {
    Class.forName(jdbcName);
    System.out.println("加载驱动成功!");
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    System.out.println("加载驱动失败!");
    } try {
    // 获取数据库连接
    conn = DriverManager.getConnection(dbUrl, dbUserName, dbPassword);
    System.out.println("获取数据库连接成功!");
    System.out.println("进行数据库操作!");
    } catch (Exception e) {
    throw new RuntimeException(e + "数据库连接失败");
    }
    return conn;
    }
    }