package jef.database.pooltest; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import javax.sql.DataSource; import org.easyframe.enterprise.spring.TransactionMode; import jef.database.DbUtils; import jef.database.innerpool.IConnection; import jef.database.innerpool.IUserManagedPool; import jef.database.innerpool.PoolService; import junit.framework.Assert; /** * 连接的抽象类 * @author zhaolong * */ public class AbstractTestConnection { private DataSource ds=null; private IUserManagedPool pool=null; //连接数据源 public void prepare(String url,String uname,String pwd,int POOL_SIZE) throws SQLException{ ds = DbUtils.createSimpleDataSource(url, uname, pwd); pool = PoolService.getPool(ds, POOL_SIZE,POOL_SIZE,TransactionMode.JPA); System.out.println(pool.toString()); } //通用的测试方法 public void consultTable()throws SQLException{ String sql="select count(*) from DEPT"; IConnection conn=pool.poll(); PreparedStatement ps=conn.prepareStatement(sql); ResultSet rs=ps.executeQuery(); if(rs.next()){ System.out.println(rs.getInt(1)); Assert.assertEquals(4, rs.getInt(1)); } } public IUserManagedPool getPool() { return pool; } public void setPool(IUserManagedPool pool) { this.pool = pool; } public DataSource getDs() { return ds; } public void setDs(DataSource ds) { this.ds = ds; } }