[Seasar-user:21492] Re: jdbc.diconにおけるPostgreSQLのautoCommit設定について
YASUO HIGA
[E-MAIL ADDRESS DELETED]
2012年 11月 6日 (火) 13:39:00 JST
ひがです。
トランザクションと連動していれば、自動でautocommitはoffになるはずなので、
まずは、トランザクションの設定を見直してみてください。
________________________________
差出人: seasar-user-bounces @ ml.seasar.org [seasar-user-bounces @ ml.seasar.org] が次の人の代理で送信しました: saraki @ pacific-systems.co.jp [saraki @ pacific-systems.co.jp]
送信日時: 2012年11月6日 11:45
宛先: seasar-user @ ml.seasar.org
件名: [Seasar-user:21491] jdbc.diconにおけるPostgreSQLのautoCommit設定について
はじめまして。荒木と申します。
PostgreSQL + S2Dao + Teedaの開発をしています。
動作環境
jdk1.6.0_34
tomcat-6.0.35
eclipse3.4.2
Teeda 1.0.12
S2Dao 1.0.47
PostgreSQL 9.1.5
jdbc.diconで以下の通りautoCommitを無効にしているのですが、update文などが実行されても自動的にコミットされてしまいます。
<component name="xaDataSource"
class="org.seasar.extension.dbcp.impl.XADataSourceImpl">
<property name="driverClassName">
"org.postgresql.Driver"
</property>
<property name="URL">
"jdbc:postgresql://PORTAL_IFRS_IT_DB/test"
</property>
<property name="user">"test"</property>
<property name="password">"test"</property>
<initMethod name="addProperty">
<arg>"autoCommit"</arg>
<arg>"false"</arg>
</initMethod>
</component>
jdbc.diconでautoCommitを無効にするにはどうしたらよいのでしょうか。
なお、S2Dao+jdbc.diconではなく、以下の通りsetAutoCommitメソッドを明示的に記述するとautoCommitが無効になりました。
try {
// JDBCドライバの登録
String driver = "org.postgresql.Driver";
// データベースの指定
String url = "jdbc:postgresql://PORTAL_IFRS_IT_DB/test";
String user = "test"; //データベース作成ユーザ名
String password = "test"; //データベース作成ユーザパスワード
Class.forName (driver);
// データベースとの接続
Connection con = DriverManager.getConnection(url, user, password);
con.setAutoCommit (false);
Statement stmt = con.createStatement ();
String sql = "UPDATE m_kanri_kengen SET update_dt = now() WHERE kanri_kengen_cd = 'G110'";
stmt.executeUpdate(sql);
stmt.close();
con.close();
} catch (SQLException e) {
System.err.println("SQL failed.");
e.printStackTrace ();
} catch (ClassNotFoundException ex) {
ex.printStackTrace ();
}
以上、宜しくお願い致します。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20121106/4aee0a4f/attachment.html>
Seasar-user メーリングリストの案内