- - PR -
JDBCでトランザクションについて
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-06-18 21:29
また質問させて頂きます。
JSP+FirebirdでWebアプリをプログラミングしてますが、ページ1でトランザクションを開始して、ページ2、ページ3でもデータを挿入し、最後にページ4でコミットまたはロールバックする事は可能ですか?。 | ||||
|
投稿日時: 2003-06-18 22:06
初めまして。
java.sql.Connection.setAutoCommit(false); で、自動コミットモードを解除して、 後から、 java.sql.Connection.commit(); コミットするなり、 java.sql.Connection.rollback(); ロールバックするなりすればいいんじゃないですかね。 | ||||
|
投稿日時: 2003-06-18 22:14
Webアプリでしたら、1ページから3ページまではセッションにデータを登録してあげて、4ページ目で登録を選択したら、セッション内のデータをJDBCでセットしてあげる方法はいががでしょうか。素直に考えると、4ページ目でDUKEさんの書いたような処理を行う方法がこれですかね。特殊な例で、途中まで入力したデータの入力を、後日再開するような使い方をする場合は途中状態をデータベースに記録しておくとかする必要もあるでしょうが。いかがでしょう。
[ メッセージ編集済み 編集者: 小僧 編集日時 2003-06-18 22:16 ] | ||||
|
投稿日時: 2003-06-18 22:18
返事ありがとうございます。
setAutoCommit(false)で始めたトランザクションを他のページからcommitする事は可能ですか? | ||||
|
投稿日時: 2003-06-18 22:26
JSPですよね?
<jsp:useBean id="conn" scope="session" class="java.sql.Connection"/> 仕様が違うかもしれないですが、 セッション管理すれば、ページは関係ないと思います。 | ||||
|
投稿日時: 2003-06-18 22:29
小僧さんありがとうございます。
セッションの使い方をまだ良く理解してないので基本的な質問をしますが、セッションには保存できるデータにリミットはありますか?、もしセッションを使用した場合、40個近くのデータ(ほとんどがStringですけど)を保存しますが、パフォーマンスには影響しませんか? | ||||
|
投稿日時: 2003-06-18 22:31
失礼しました・・ <jsp:useBean id="conn" scope="session" class="java.sql.Connectionを実装クラス"/> の間違いです・・<(_ _)> | ||||
|
投稿日時: 2003-06-18 22:54
DUKEさんありがとうございます。
色々やり方はあるみたいですね、一つ一つ試してみて、一番僕にあったやり方を選びます | ||||
