weixin_38998783 2019-11-22 23:02
浏览 239

QueryRunner的无connection是怎样获得连接的???

代码在下面已经给出 2 种方式查询到的结果一样,那么QueryRunner的无connection是怎样获得连接的???

//需要用到的工具类
public class DBCPUtils {
private static DataSource dataSource;
static{

    try {
        //1.加载找到properties文件输入流
        InputStream is = DBCPUtils.class.getClassLoader().getResourceAsStream("db.properties");
        //2.加载输入流
        Properties props = new  Properties();
        props.load(is);

        //3.创建数据源  基本数据源工厂
        dataSource = BasicDataSourceFactory.createDataSource(props);
    } catch (Exception e) {
        throw  new RuntimeException(e);
    }

}

public static DataSource getDataSource(){
    return dataSource;  
}

public static Connection getConnection6666(){
    try {
        return dataSource.getConnection();
    } catch (SQLException e) {
        throw  new RuntimeException(e);
    }

}

//有Connection 参数的
@Test
public void testQueryAll(){

    try {
        Connection conn = DBCPUtils.getConnection6666();
        QueryRunner qr = new QueryRunner(DBCPUtils.getDataSource());
        String sql = "select * from tbl_user";
        List<User> users = qr.query(conn, sql, new BeanListHandler<>(User.class));
        for (User user : users) {
            System.out.println(user.getUname()+"   "+user.getUpassword());
        }


    } catch (SQLException e) {
        throw new RuntimeException(e);

    }

//没有Connection 参数的
public void testQueryAll1(){

    try {
        QueryRunner qr = new QueryRunner(DBCPUtils.getDataSource());
       String sql = "select * from tbl_user";
        List<User> users = qr.query( sql, new BeanListHandler<>(User.class));

        for (User user : users) {
            System.out.println(user.getUname()+"   "+user.getUpassword());
        }


    } catch (SQLException e) {
        throw new RuntimeException(e);

    }

}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥50 易语言把MYSQL数据库中的数据添加至组合框
    • ¥20 求数据集和代码#有偿答复
    • ¥15 关于下拉菜单选项关联的问题
    • ¥20 java-OJ-健康体检
    • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
    • ¥15 使用phpstudy在云服务器上搭建个人网站
    • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
    • ¥15 vue3+express部署到nginx
    • ¥20 搭建pt1000三线制高精度测温电路
    • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况