私の教育用JSPプロジェクト(サーブレット、Java EE)では、Javaでデータベースを実装する必要があります。インデックスページでは、データベース(MySQLではなく、オブジェクトへのリンクを含むHashMapベースの構造)を構築するための関数を実行し、基本データで埋めます。私の問題は、この "データベース"をグローバルにすることができず、サイトのすべてのページからこの構造にアクセスできないことです。この構造体へのポインタ/リンクをすべてのJSPサイトのページに渡すにはどうすればよいですか?JSPプロジェクトのグローバル変数構造(DB)
0
A
答えて
1
webappの起動時にサーブレットコンテキスト属性として設定します。これにはServletContextListener
を使用できます。
@WebListener
public class DatabaseConfigurator implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent event) {
Map<String, Object> database = new HashMap<String, Object>();
event.getServletContext().setAttribute("database", database);
}
// ...
}
次のようにそれはすべてのサーブレットで利用可能です:
Map<String, Object> database = (Map<String, Object>) getServletContext().getAttribute("database");
// ...
次のようにそれはすべてのJSPでavailablewです:
${database}
(マップ値は、マップのキーによって提供されています通常のELは${map.key}
のようになります)
1
servlet
を書き、データベースから結果を取り込み(リストを準備する)、その結果をリクエストの属性(またはセッション属性)にバインドして、RequestDispatcher
経由でJSPに転送します。 JSPでは、EL
とJSTL
を使用してそのリストを反復することができます。
関連する問題
- 1. グローバル変数jspサーブレット
- 2. JSPのディレクトリ構造
- 3. ヘッダーファイルのグローバル構造
- 4. グローバル構造体を定義するグローバル構造体
- 5. Wordpress DBの構造
- 6. 構造化Firebase DB
- 7. Webフォームで読み込むDBテーブルの変数構造
- 8. マルチページJSPプロジェクトを構造化する方法は?
- 9. 構造体変数と構造体メンバ
- 10. のCakePHPのApp-構造:1 DB&アプリの対複数のDB&アプリ
- 11. MySQLのDB構造のヘルプ
- 12. MYSQLテーブル構造グローバルNULL値
- 13. Githubプロジェクトの構造
- 14. ルーメンのプロジェクト構造
- 15. PHPプロジェクトの構造
- 16. SVNプロジェクトの構造
- 17. Androidプロジェクトの構造
- 18. 理解adventureworks2012のDB構造
- 19. DB内のデータ構造フィールド
- 20. 複数のエントリは、プロジェクト構造が
- 21. サーブレット、JspプロジェクトMySQL構文エラー
- 22. スリム3と小枝 - グローバル変数DBクエリ
- 23. SocialEngine db構造/説明
- 24. 動的アンケートアプリDB構造
- 25. のEclipse:Cプロジェクトのフォルダ構造
- 26. MavenのEclipseの構造プロジェクト
- 27. プロジェクト構造の辞書
- 28. Pythonのプロジェクト構造、輸入
- 29. プロジェクトの構造はPython
- 30. svnのAsp.netプロジェクト構造
なぜあなたはmですか?それはグローバルですか?なぜあなたはこれをこのように実装しなければならないのですか? –
これは小さなプロジェクトではなく、私のものではなく、私が必要とするのは、このような問題を修正することです。ユーザーはグローバルHashMapにアクセスできず、どのページからでもクエリを実行できません。 –