プロが教えるわが家の防犯対策術!

ええと..何から言えばいいのか…。私は今、Servlet&JSPを使って、XMLデータベースにアクセスするプログラムを作っています。
簡単な掲示板(見たいなもの)ですが、少し困っています。
それは、プログラムの実行時間についてです。
例えば、誰かが何かを投稿する度にデータベースにアクセスし、
投稿されたものを表示させる度にデータベースにアクセスし、
また、投稿されたものを検索する度にデータベースにアクセスしています。

なぜなら、それぞれの処理を違うクラスで行っているため、データベースにアクセスした時に取得したCollectionを渡すやりかたを知らないからです。
それに、実験段階ではあまり実行時間を気にする必要はないので取り合えずそのようにしました。

しかし、たくさんの人が使う場合にきっとこんなやり方では時間がかかることが
予想されます。

そこで、どなたか「こうすればいい」という意見のある方いませんか?
実際の処理じゃなくていいんです。「意見」で十分です。私に知識を下さい。
お願いします。

A 回答 (1件)

 画面が遷移するときにオブジェクトを「サーブレット→JSP」「サーブレット→サーブレット」の間で受け渡したいという話でしょうか。

典型的な例はショッピングサイトの買い物籠情報ですね。

 それでしたら(Servlet&JSPで開発している以上、ご存知だと思いますが…? 私の解釈がズレてるのかな)HttpSessionというものを利用します。

http://www.atmarkit.co.jp/fjava/special/servlet2 …
http://www.atmarkit.co.jp/fjava/special/servlet2 …


 また実行時間という面から見ると、データベースの毎回のアクセスは高速に行いたいですね。データベースのアクセスでもっとも時間を要する処理は、コネクションの確立(java.sql.Connectionオブジェクトの生成)です。アクセスのたびにConnectionオブジェクトを毎回生成していたら、とてもパフォーマンスは得られません。そこで通常は「コネクション・プーリング」という仕掛けを行います。

http://www.atmarkit.co.jp/fjava/javafaq/jdbc/jdb …

 プーリングはアプリケーションサーバの機能を利用しますが、その機能を持たないサーブレットエンジン(Tomcatなど)に対しては自前で行う必要があります。私は参考URLの書籍(良書だと思います)に載っているサンプルコードをほとんどそのまま利用しました。

参考URL:http://books.softbank.co.jp/bm_detail.asp?sku=47 …
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
URLも、本も調べさせて頂きました。

お礼日時:2002/01/31 12:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!