JdbcUtils用来获取Connection
* 底层使用了c3p0连接池 c3p0-0.9.2-pre1.jar,mchange-commons-0.2.jar
* 还需要mysql驱动 mysql-connector-java-5.1.13-bin.jar
1 public class JdbcUtilsTest { 2 /** 3 * 底层使用了c3p0连接池,说明我们还要提供c3p0配置文件 c3p0-config.xml里面的用户名,密码,端口号,数据库名字要按照自己的进行修改 4 * @throws SQLException 5 */ 6 @Test 7 public void testGetConnection() throws SQLException{ 8 Connection con=JdbcUtils.getConnection();//连接数据库 9 System.out.println(con);//输出连接信息 10 JdbcUtils.releaseConnection(con);//如果当前连接跟事务有关就不关闭数据库,如果无关就关闭数据库 11 System.out.println(con.isClosed());//输出当前连接是否关闭 12 } 13 /** 14 * JdbcUtilst还提供了与事务相关的功能。事务就是多个SQL语句,要么所有执行success,不然就fail。典型的例子就是转账。先update后insert 15 */ 16 @Test 17 public void testTransaction() 18 { 19 try{ 20 JdbcUtils.beginTransaction();//开启事务 21 //多次操作 22 JdbcUtils.commitTransaction();//提交事务 23 } 24 catch(Exception e){ 25 try{ 26 JdbcUtils.rollbackTransaction();//回滚事务 数据库操作错误,可以回滚还原操作。 27 } catch (SQLException e1) 28 {} 29 } 30 }
配置文件:
1 //c3p0-config.xml配置文件信息 2 <?xml version="1.0" encoding="UTF-8"?> 3 4 <c3p0-config> 5 <default-config> 6 <property name="user">****</property> <!-- 用户名 --> 7 <property name="password">****</property> <!-- 密码 --> 8 <property name="driverClass">com.mysql.jdbc.Driver</property> 9 <property name="jdbcUrl">jdbc:mysql:///***</property> <!-- 数据库名字 --> 10 </default-config> 11 </c3p0-config> 12 13