本文整理汇总了Java中org.apache.ibatis.datasource.pooled.PooledDataSource.setDefaultAutoCommit方法的典型用法代码示例。如果您正苦于以下问题:Java PooledDataSource.setDefaultAutoCommit方法的具体用法?Java PooledDataSource.setDefaultAutoCommit怎么用?Java PooledDataSource.setDefaultAutoCommit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.ibatis.datasource.pooled.PooledDataSource
的用法示例。
在下文中一共展示了PooledDataSource.setDefaultAutoCommit方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: shouldProperlyMaintainPoolOf3ActiveAnd2IdleConnections
import org.apache.ibatis.datasource.pooled.PooledDataSource; //导入方法依赖的package包/类
@Test
public void shouldProperlyMaintainPoolOf3ActiveAnd2IdleConnections() throws Exception {
PooledDataSource ds = createPooledDataSource(JPETSTORE_PROPERTIES);
try {
runScript(ds, JPETSTORE_DDL);
ds.setDefaultAutoCommit(false);
ds.setDriverProperties(new Properties() {
{
setProperty("username", "sa");
setProperty("password", "");
}
});
ds.setPoolMaximumActiveConnections(3);
ds.setPoolMaximumIdleConnections(2);
ds.setPoolMaximumCheckoutTime(10000);
ds.setPoolPingConnectionsNotUsedFor(1);
ds.setPoolPingEnabled(true);
ds.setPoolPingQuery("SELECT * FROM PRODUCT");
ds.setPoolTimeToWait(10000);
ds.setLogWriter(null);
List<Connection> connections = new ArrayList<Connection>();
for (int i = 0; i < 3; i++) {
connections.add(ds.getConnection());
}
assertEquals(3, ds.getPoolState().getActiveConnectionCount());
for (Connection c : connections) {
c.close();
}
assertEquals(2, ds.getPoolState().getIdleConnectionCount());
assertEquals(4, ds.getPoolState().getRequestCount());
assertEquals(0, ds.getPoolState().getBadConnectionCount());
assertEquals(0, ds.getPoolState().getHadToWaitCount());
assertEquals(0, ds.getPoolState().getAverageOverdueCheckoutTime());
assertEquals(0, ds.getPoolState().getClaimedOverdueConnectionCount());
assertEquals(0, ds.getPoolState().getAverageWaitTime());
assertNotNull(ds.getPoolState().toString());
} finally {
ds.forceCloseAll();
}
}
示例2: shouldReconnectWhenServerKilledLeakedConnection
import org.apache.ibatis.datasource.pooled.PooledDataSource; //导入方法依赖的package包/类
@Ignore("See the comments")
@Test
public void shouldReconnectWhenServerKilledLeakedConnection() throws Exception {
// See #748
// Requirements:
// 1. MySQL JDBC driver dependency.
// 2. MySQL server instance with the following.
// - CREATE DATABASE `test`;
// - SET GLOBAL wait_timeout=3;
// 3. Tweak the connection info below.
final String URL = "jdbc:mysql://localhost:3306/test";
final String USERNAME = "admin";
final String PASSWORD = "";
Connection con;
PooledDataSource ds = new PooledDataSource();
ds.setDriver("com.mysql.jdbc.Driver");
ds.setUrl(URL);
ds.setUsername(USERNAME);
ds.setPassword(PASSWORD);
ds.setPoolMaximumActiveConnections(1);
ds.setPoolMaximumIdleConnections(1);
ds.setPoolTimeToWait(1000);
ds.setPoolMaximumCheckoutTime(2000);
ds.setPoolPingEnabled(true);
ds.setPoolPingQuery("select 1");
ds.setDefaultAutoCommit(true);
// MySQL wait_timeout * 1000 or less. (unit:ms)
ds.setPoolPingConnectionsNotUsedFor(1000);
con = ds.getConnection();
exexuteQuery(con);
// Simulate connection leak by not closing.
// con.close();
// Wait for disconnected from mysql...
Thread.sleep(TimeUnit.SECONDS.toMillis(3));
// Should return usable connection.
con = ds.getConnection();
exexuteQuery(con);
con.close();
}
示例3: shouldReconnectWhenServerKilledLeakedConnection
import org.apache.ibatis.datasource.pooled.PooledDataSource; //导入方法依赖的package包/类
@Ignore("See the comments")
@Test
public void shouldReconnectWhenServerKilledLeakedConnection() throws Exception {
// See #748
// Requirements:
// 1. MySQL JDBC driver dependency.
// 2. MySQL server instance with the following.
// - CREATE DATABASE `test`;
// - SET GLOBAL wait_timeout=3;
// 3. Tweak the connection info below.
final String URL = "jdbc:mysql://localhost:3306/test";
final String USERNAME = "admin";
final String PASSWORD = "";
PooledDataSource ds = new PooledDataSource();
ds.setDriver("com.mysql.jdbc.Driver");
ds.setUrl(URL);
ds.setUsername(USERNAME);
ds.setPassword(PASSWORD);
ds.setPoolMaximumActiveConnections(1);
ds.setPoolMaximumIdleConnections(1);
ds.setPoolTimeToWait(1000);
ds.setPoolMaximumCheckoutTime(2000);
ds.setPoolPingEnabled(true);
ds.setPoolPingQuery("select 1");
ds.setDefaultAutoCommit(true);
// MySQL wait_timeout * 1000 or less. (unit:ms)
ds.setPoolPingConnectionsNotUsedFor(1000);
Connection con = ds.getConnection();
exexuteQuery(con);
// Simulate connection leak by not closing.
// con.close();
// Wait for disconnected from mysql...
Thread.sleep(TimeUnit.SECONDS.toMillis(3));
con.close();
// Should return usable connection.
con = ds.getConnection();
exexuteQuery(con);
con.close();
}