C3P0数据库连接池

心已赠人 2022-05-16 12:44 342阅读 0赞

C3P0是Spring内置的数据源
需要导入的jar包是:
- c3p0-0.9.2-pre1.jar
- mchange-commons-0.2.jar

方式一

读取配置文件c3p0-config.xml(可以放在src下或者WEB-INF/classes下)

方式二

  1. package com.kexin.utils;
  2. import java.beans.PropertyVetoException;
  3. import java.sql.Connection;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;
  7. import java.util.Properties;
  8. import javax.sql.DataSource;
  9. import org.apache.commons.dbcp.BasicDataSourceFactory;
  10. import com.mchange.v2.c3p0.ComboPooledDataSource;
  11. /**
  12. * 使用c3p0获取数据库连接
  13. * @author KeXin
  14. *
  15. */
  16. public class C3p0Utils {
  17. private static ComboPooledDataSource ds;
  18. static{
  19. ds = new ComboPooledDataSource();
  20. try {
  21. ds.setDriverClass("com.mysql.jdbc.Driver");
  22. ds.setJdbcUrl("jdbc:mysql://localhost:3306/database1");
  23. ds.setUser("root");
  24. ds.setPassword("root");
  25. ds.setMaxPoolSize(30);
  26. ds.setMinPoolSize(5);
  27. ds.setInitialPoolSize(10);
  28. } catch (PropertyVetoException e) {
  29. // TODO Auto-generated catch block
  30. e.printStackTrace();
  31. }
  32. }
  33. /**
  34. * ②获取Connection对象
  35. * @return
  36. * @throws SQLException
  37. */
  38. public static Connection getConnection() throws SQLException{
  39. return ds.getConnection();
  40. }
  41. /**
  42. * ③关闭连接
  43. */
  44. public static void release(Connection conn,Statement st,ResultSet rs){
  45. if (rs != null) {
  46. try {
  47. rs.close();
  48. } catch (SQLException e) {
  49. e.printStackTrace();
  50. }
  51. }
  52. if (st != null) {
  53. try {
  54. st.close();
  55. } catch (SQLException e) {
  56. e.printStackTrace();
  57. }
  58. }
  59. if (conn != null) {
  60. try {
  61. conn.close();
  62. } catch (SQLException e) {
  63. e.printStackTrace();
  64. }
  65. }
  66. }
  67. }

发表评论

表情:
评论列表 (有 0 条评论,342人围观)

还没有评论,来说两句吧...

相关阅读

    相关 c3p0连接

    c3p0连接池 什么是c3p0 c3p0是一个易于使用的库,通过使用jdbc3规范和jdbc2的可选扩展定义的功能来扩展传统JDBC驱动程序,从而使其“企业级可用”。

    相关 数据库连接(C3P0、DBCP)

    数据库连接是一种关键的、有限的、昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。在这

    相关 C3p0-数据库连接

    数据库链接池 数据库连接池的概念 数据库连数据库接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个。 数据库链