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);
    }
    }
  • 相关阅读:
    2018/12/05 PAT刷题 L1-014 简单题 Java
    2018/12/05 PAT刷题 L1-013 计算阶乘和 Java
    2018/12/04 PAT刷题 L1-012 计算指数 java
    L1-011 A-B Java 部分解
    2018/12/04 PAT再思考 L1-010 比较大小
    2018/12/04 PAT刷题 L1-009 N个数求和 java
    2018/12/04 PAT刷题 L1-008 求整数段和 java
    2018/12/04 PAT刷题 L1-007 念数字 java
    建造者模式
    外观模式
  • 原文地址:https://www.cnblogs.com/faded828x/p/13198774.html
Copyright © 2011-2022 走看看