导入mysql-connector-java-5.1.48-bin.jar,mchange-commons-java-0.2.19.jar,c3p0-0.9.5.5.jar包。
配置文件,用于连接数据库,定义文件名为c3p0-config
<?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <default-config> <property name="jdbcUrl">jdbc:mysql://localhost:3306/test</property> <property name="driverClass">com.mysql.jdbc.Driver</property> <property name="user">root</property> <property name="password">123456</property> <property name="acquireIncrement">3</property> <property name="initialPoolSize">10</property> <property name="minPoolSize">2</property> <property name="maxPoolSize">10</property> </default-config> </c3p0-config>TxRunerTest插入数据
@Test public void TxRunerTest() throws SQLException{ String sql="insert into tb_shop(pid,pname) values(?,?)"; Object[] params= {"41","d3443"}; QueryRunner qr=new TxQueryRunner(); qr.update(sql,params); }TxRunerTes用事务进行多条数据的插入
@Test public void testUpdate() throws Exception { try { //开启事务 JdbcUtils.beginTransaction(); String sql="insert into tb_shop(pid,pname) values(?,?)"; QueryRunner qr=new TxQueryRunner(); Object[] params= {"781","43"}; qr.update(sql,params); params= new Object[]{"dew41","3"}; qr.update(sql,params); if(false) { throw new Exception(); } //提交事务 JdbcUtils.commitTransaction(); } catch (SQLException e) { try { //回滚事务 JdbcUtils.rollbackTransaction(); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }查询数据
@Test public void testQuery() throws SQLException { String sql="select*from tb_shop"; QueryRunner qr=new TxQueryRunner(); List<Map<String,Object>> mapList= (List<Map<String, Object>>) qr.query(sql, new MapListHandler()); // Object obj=qr.query(sql, new ScalarHandler()); /*pid*/ // Number number=(Number)obj; // long ont=number.longValue(); System.out.println(mapList); }