我正在使用 DB2。我为它创建了连接池。一些查询需要在“aumoCommit = false”模式下执行。
Connection con = ConnectionPool.getConnection // wrapper
con.setAutoCommit(false);
PreparedStatment ps = con.prepareStatement(// query... );
ps.setString(...);
ps.executeUpdate();
con.commit();
ps.close();
con.close();
con.setAutoCommit(true); // should be here ?
Run Code Online (Sandbox Code Playgroud)
问题是:我应该在最后添加 con.setAutoCommit(true) 行还是 C3P0 重置每个关闭(返回到池)连接的状态?
编辑:在几条评论之后,我补充说我的问题是:一般情况下应该调用 con.setAutoCommit(false) 还是 c3P0 重置此连接的状态,并且下一次此连接将默认处于 con.setAutoCommit(false) 状态?
假设我需要访问变量'asdf'大约1000次.
什么会更快:创建对象Foo并将其作为参数传递给bar构造函数并通过getter访问它或静态访问Foo的数字.或者那两种方法具有相同的性能?
Class Foo {
public int asdf;
}
Class Bar {
Foo foo;
Bar(Foo foo1) {
this.foo = foo;
}
public void funcBar() {
foo.asdf;
}
}
Class Foo {
public static int asdf;
}
Class Bar {
public void funcBar() {
Foo.asdf;
}
}
Run Code Online (Sandbox Code Playgroud)