- PR -

JSPとサーブレットでデータベース更新処理

投稿者投稿内容
りょうちん
ベテラン
会議室デビュー日: 2002/09/11
投稿数: 58
投稿日時: 2002-09-11 17:34
なんていったらいいのか、言葉足らずで申し訳ないです。

「更新のJSP画面」に飛んで着た時にテキストボックスやリストボックスに値を渡しているんですよ。
そして「更新ボタン」を押した再にその下にJSPで確認の為にもう一度サーブレットで今更新した内容で検索し、表示させるといった動きです。
それで、更新した内容が下に表示されると同時に、テキストボックスやリストボックスには更新ボタンを押される前の状態を維持しておきたいと言うわけです。

ほんとに申し訳無いです。。。
りょうちん
ベテラン
会議室デビュー日: 2002/09/11
投稿数: 58
投稿日時: 2002-09-12 12:54
引用:

GONさんの書き込み (2002-09-11 17:18) より:
ふむふむやりたいことは分かりました。
とりあえずDB無視して現在入力されている値で表示させたいなら
sessionにとりあえず現在の入力されている値をクラスごと入れてしまえばいいのでは。
それを再びデフォルトでいれてやればいいんじゃないんでしょうか。



昨日はありがとうございました。

具体的にどうすればよいのですか?

ほんとに初心者なのでよろしくお願いします。
しょむ
ぬし
会議室デビュー日: 2001/09/06
投稿数: 430
投稿日時: 2002-09-12 13:33
はじめてソースを見てみた。

いかにも「誰かが用意してくれたテンプレートを元にいじってる」とか「誰かの作ったソースをメンテしろっていわれたからやってる」ように見えますね。Oracle とか使ってるし。

りょうちんさんは、もっと基礎的なことから勉強したほうがいいのでは。Java についても HTTP についても知識が足りないように見受けられます。良書もたくさんありますし、ここの Java Solution にも記事がありますから、まずは簡単な例から系統立てた勉強をするのが将来の糧にもなるでしょう。

# この場がしのげればそれでいいやというのならいいんですけど。
# ちうか、業務システムのようですし、ネットで聞くより近くの人に聞く方が
# いいと思うのですが…
GON
常連さん
会議室デビュー日: 2002/09/03
投稿数: 28
お住まい・勤務地: 八王子
投稿日時: 2002-09-12 17:20
こんにちは。
あらまあ言われてしまいましたね。
僕もしょむさんと意見は一緒です。
ですが僕自身も初心者なので一応ヒントを書いておきます。
どうしても分からなければ見て下さい。(^x^;

昨日ソースを読んだ感じで言いますので間違ってたら自分で何とかしてください。
まずDataBeanクラスがデータ保持クラスのようです。
DataBean db = new DataBean();
残りのクラスはデータベース操作クラスのようです。
なぜかセッションがいました。(爆)
HttpSession session = getSession( true );
こいつにDataBeanクラスを入れるわけです。
session.setAttribute( "new_db", db );
session.setAttribute( "old_db", db );
古いの新しいのと同じデータを2つセットします。
<jsp:useBean id="new_db" scope="session" class="mybeans.DataBean">
<jsp:useBean id="old_db" scope="session" class="mybeans.DataBean">
JSPでセッションをもらいます。
タイミングは最初の表示、最初の更新、X番目の更新....
最初の表示の時点ではどれをもらってきてもOKですね。
しかし最初の更新では古いデータと新しいデータを分けなくてはいけません。
ここで自分がよく分からないのがDB登録のタイミングです。
データベースにまず登録を済ませてから画面を出すのか画面をまず出して今一度更新を押させるのかというところです。
まあ後は自分で考えるところでしょう。がんばってください。
わらび
ベテラン
会議室デビュー日: 2002/08/30
投稿数: 53
投稿日時: 2002-09-12 18:50
こんにちは。わらびです。
私も初心者なので、ヒントを。

ざっとソースを見た感じでは、request_scope と session_scope で、変数が保持される
範囲の違いを考えれば,りょうちんさんがなさりたいことが、なぜ出来ないか、解かる気がい
たしますよ。

それでは。
りょうちん
ベテラン
会議室デビュー日: 2002/09/11
投稿数: 58
投稿日時: 2002-09-13 09:06
GONさん・わらびさん・しょむさん
ありがとうございます。

このPGは勉強のつもりで行っていたのですが・・・
今一度勉強し直します。

みなさんありがとうございました。
しょむ
ぬし
会議室デビュー日: 2001/09/06
投稿数: 430
投稿日時: 2002-09-13 14:16
まだ見ていらっしゃったら。

> このPGは勉強のつもりで行っていたのですが・・・
> 今一度勉強し直します。

たとえば .NET のように、自分のレベルにあった参考となる書籍や情報が少ない新しい技術であれば、ネットで情報を集めてわかってる人にたずねるぐらいしか手段がないかと思いますが、Java/Servlet/JSP はもう成熟していますし、本やサイトもたくさんあります。

バックボーンになる知識は、やっぱりちゃんとまとまったものを一度勉強するほうが効率がいいですよ。もちろん、本やサイトには簡単な例しか載っていなくて困っちゃうとか、書いてあることが理解できないとか、どうしても解決法を思いつかないということはあります。そんときはわかってる人に質問してみるとよいでしょう。

スキルアップ/キャリアアップ(JOB@IT)