zoukankan      html  css  js  c++  java
  • Druid连接池 dbutils包

    Druid连接池

    package com.JDBC;
    
    import com.alibaba.druid.pool.DruidDataSourceFactory;
    
    import javax.sql.DataSource;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.util.Properties;
    
    
    //Druid获取连接
    public class DruidTest {
        private static DataSource dataSource;
        static{
            try {
                InputStream inputStream = ClassLoader.getSystemClassLoader().getResourceAsStream("druid.properties");
                Properties properties = new Properties();
                properties.load(inputStream);
                dataSource = DruidDataSourceFactory.createDataSource(properties);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        public static Connection getConnection() throws Exception {
            Connection connection = dataSource.getConnection();
            return connection;
        }
    }

    /* druid.properties
    url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=utf-8&useSSL=true
    username=root
    password=123456
    driverClassName=com.mysql.cj.jdbc.Driver
    */
    
    

    dbutils:(数据库操作工具类)

    package com;
    
    import com.JDBC.DruidTest;
    import com.JDBC.JDBCUtils;
    import org.apache.commons.dbutils.QueryRunner;
    import org.junit.Test;
    
    import java.sql.Connection;
    
    public class QueryRunnerTest {
        @Test
        public  void insertTest(){
            Connection connection = null;
            try {
                QueryRunner queryRunner = new QueryRunner();
                connection = DruidTest.getConnection();
                String sql = "insert into pet(name,age) values(?,?);";
                queryRunner.update(connection, sql, "Jie",5);
            } catch (Exception e) {
                e.printStackTrace();
            } finally{
                JDBCUtils.closeConnection(connection, null);
            }
        }
      
    @Test
    public void queryTest() {
    List<Pet> query = null;
    Connection connection = null;
    try {
    QueryRunner queryRunner = new QueryRunner();
    connection = DruidTest.getConnection();
    String sql = "select * from pet where age<?";
    BeanListHandler<Pet> petBeanHandler = new BeanListHandler<>(Pet.class);
    query = queryRunner.query(connection, sql, petBeanHandler, 6);
    } catch (Exception e) {
    e.printStackTrace();
    } finally {
    JDBCUtils.closeConnection(connection, null);
    }
    query.forEach(System.out::println);
    }
    }
  • 相关阅读:
    2021 CCPC 桂林站 补题
    2021 ICPC 上海 流水账
    2021 ICPC 沈阳 补题
    vi中的多行注释和取消注释
    查询列表可筛选可模糊查询的写法
    mybatisplus逻辑删除deleted
    @JsonFormat
    @Component类相互引用的加载顺序
    Chrome浏览器嗅探方法
    DataAdapter.FillSchema 方法
  • 原文地址:https://www.cnblogs.com/faded828x/p/13198774.html
Copyright © 2011-2022 走看看