当前位置:网站首页>Druid database connection pool details

Druid database connection pool details

2022-07-06 19:20:00 Gentle ~

Recommended reading :JDBC Detailed explanation

summary

1. Database connection pool is a container , To be responsible for the distribution of 、 Manage database connections (Connection);
2. It allows applications to reuse an existing database connection , Instead of building a new ;
3. Release database connection with idle time exceeding the maximum idle time to avoid missing database connection caused by no free database connection ;

It can be understood by analogy with thread pool .

advantage
1. Resource reuse
2. Improve system response speed
3. Avoid missing database connections

 Insert picture description here

Connection pool is to create some connections at the beginning (Connection) Objects stored . When users need to connect to the database , You don't need to create your own connection , You only need to get a connection from the connection pool for use , Return the connection object to the connection pool after use ; In this way, we can reuse resources , It also saves time for frequent connection creation and connection destruction , Thus, the response speed of the system is improved .

Common database connection pool : DBCP、C3P0、Druid
Now we use more Druid, Its performance will be better than the other two .

Druid Connection pool is an open source database connection pool project of Alibaba , Powerful , Excellent performance , yes Java One of the best database connection pools in language .

Database connection pool implementation

Standard interface :DataSource
official (SUN) Database connection pool standard interface provided , This interface is implemented by a third-party organization . This interface provides the function of obtaining connection :Connection getConnection()

Then you don't need to pass DriverManager Object acquisition Connection object , But through the connection pool (DataSource) obtain Connection object .

Driud Usage flow

1. Import jar package druid-1.1.12.jar
2. Define configuration file druid.properties
3. Load profile
4. Get database connection pool object
5. Get the connection

 Insert picture description here

Code example

The configuration file
druid.properties

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/sd?useSSL=false&useServerPrepStmts=true
username=root
password=root
#  The number of initial connections 
initialSize=5
#  maximum connection 
maxActive=10
#  Maximum waiting time 
maxWait=3000

Java Code

public static void main(String[] args) throws Exception {
    
        //1. Import jar package 
        //2. Define configuration file 
        //3.  Load profile 
        Properties prop=new Properties();
        prop.load(new FileInputStream("C:\\Users\\ Sven \\Desktop\\Java\\demo\\index\\src\\druid.properties"));

        //4.  Get connection pool object 
        DataSource dataSource= DruidDataSourceFactory.createDataSource(prop);

        //5.  Get database connection  Connection
        Connection conn=dataSource.getConnection();

        //6. Operating the database 
        String sql = "select * from st";
        Statement stmt=conn.createStatement();
        ResultSet rs = stmt.executeQuery(sql);
        while (rs.next()) {
    
            int id = rs.getInt("id");
            String name = rs.getString("name");
            int age = rs.getInt("age");
            System.out.println(id + " " + name + " " + age);
        }

    }

Recommended reading :JDBC Detailed explanation

原网站

版权声明
本文为[Gentle ~]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/187/202207061122252686.html