数据库连接
数据库连接是一种关键的、有限的、昂贵的资源,对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。
连接池
数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放,空闲时间超过最大空闲时间的数据库连接,来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能.
连接池与JDBC技术差别
在JDBC中,Connection对象需要关闭,用close()方法关闭,那么整个连接就会完全销毁,连接的创建是十分消耗计算机资源的.
因此,在连接池一次性创建多个连接,每次使用时从池中获得连接即可,使用完毕也将连接放回到连接池,并非销毁.很大程度上节省了创建连接,销毁连接对计算机性能的消耗.
连接池用到了代理模式来解决获取和关闭连接.
代码示例
Connection connection1 = JDBCUtilsx.createConnection();
System.out.println("连接池的对象" + connection1);
connection1.close();
Connection connection2 = DriverManager.getConnection(
"jdbc:mysql://47.108.65.254/ApesourceAggregateData?useSSL=false&serverTimezone=UCT", "apesource_stu",
"Apesource=1024");
System.out.println("JDBC创建的connection" + connection2);
connection2.close();
打印结果:连接池中ProxyConetion

总的来说JDBC中关闭连接阵时真正的连接,而连接池是归还连接到连接池中
网友评论