c3p0封装
2019-03-12 08:21:30来源:博客园 阅读 ()
配置文件
1 <?xml version="1.0" encoding="UTF-8"?> 2 <c3p0-config> 3 <default-config> 4 <property name="user">root</property> 5 <property name="password">root</property> 6 <property name="driverClass">com.mysql.jdbc.Driver</property> 7 <property name="jdbcUrl">jdbc:mysql:///day35</property> 8 </default-config> 9 </c3p0-config>
Java
1 package utils; 2 3 import java.sql.Connection; 4 import java.sql.ResultSet; 5 import java.sql.SQLException; 6 import java.sql.Statement; 7 8 import javax.sql.DataSource; 9 10 import com.mchange.v2.c3p0.ComboPooledDataSource; 11 12 public class DataSourceUtils { 13 14 private static DataSource dataSource = new ComboPooledDataSource(); 15 16 private static ThreadLocal<Connection> tl = new ThreadLocal<Connection>(); 17 18 // 直接可以获取一个连接池 19 public static DataSource getDataSource() { 20 return dataSource; 21 } 22 23 public static Connection getConnection() throws SQLException { 24 return dataSource.getConnection(); 25 } 26 27 // 获取连接对象 28 public static Connection getCurrentConnection() throws SQLException { 29 30 Connection con = tl.get(); 31 if (con == null) { 32 con = dataSource.getConnection(); 33 tl.set(con); 34 } 35 return con; 36 } 37 38 // 开启事务 39 public static void startTransaction() throws SQLException { 40 Connection con = getCurrentConnection(); 41 if (con != null) { 42 con.setAutoCommit(false); 43 } 44 } 45 46 // 事务回滚 47 public static void rollback() throws SQLException { 48 Connection con = getCurrentConnection(); 49 if (con != null) { 50 con.rollback(); 51 } 52 } 53 54 // 提交并且 关闭资源及从ThreadLocall中释放 55 public static void commitAndRelease() throws SQLException { 56 Connection con = getCurrentConnection(); 57 if (con != null) { 58 con.commit(); // 事务提交 59 con.close();// 关闭资源 60 tl.remove();// 从线程绑定中移除 61 } 62 } 63 64 // 关闭资源方法 65 public static void closeConnection() throws SQLException { 66 Connection con = getCurrentConnection(); 67 if (con != null) { 68 con.close(); 69 } 70 } 71 72 public static void closeStatement(Statement st) throws SQLException { 73 if (st != null) { 74 st.close(); 75 } 76 } 77 78 public static void closeResultSet(ResultSet rs) throws SQLException { 79 if (rs != null) { 80 rs.close(); 81 } 82 } 83 84 }
原文链接:https://www.cnblogs.com/voidchar/p/10514397.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:分享JavaScript学习指南
下一篇:Tomcat常用的过滤器
- Spring Boot 实现配置文件加解密原理 2020-06-08
- Spring Boot加密配置文件特殊内容 2020-05-29
- SpringCloud异常处理统一封装我来做-使用篇 2020-05-23
- JAVA连载117-反射的应用与打破封装新 2020-05-23
- Maven+JSP+Servlet+C3P0+Mysql实现的音乐库管理系统 2020-05-22
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash