2
Tomcatサーバーでデータをメモリにロードするにはどうすればよいですか?Jsp大量のデータをメモリにロードしていますか?
私はファイルからデータをロードするJavaクラスを持っています。 私は一度データをメモリにロードしたい、そしてクライアントがそのクラスを使用するページを要求するたびに、データはメモリから使用されることになります。例
class MyClass
{
HashMap data = new HashMap(100);
public void LoadDataFromFile()
{.....}
public void UseTheData(String input)
{....}
public MyClass(){ LoadDataFromFile();} // c'tor load data
public SetInput(String Input)
{
UseTheData(input);
}
}
のため、私のJSPファイル内
私は意志スコープ= "セッション" を使用する場合、私はJSPファイル
にJSTLを使用する必要があります知っている
Myclass myclass= new MyCass();
myclass.LoadDataFromFile();
myclass.UseTheData();
データの読み込みは残りますか?
<jsp:useBean id="myclass" class="MyClass" scope="session">
<jsp:setProperty name="myclass" property="input" value="blabla" />
</jsp:useBean>
コンストラクタでデータをロードする場合、クラスがinitであることを一度だけ確認できますか?
Javaクラスはこのサーブレットを知らないので、サーブレットからクラスにデータを渡す必要がありますか? – yossi
scope = "session"をscope = "application"に置き換えると、ServletContext属性に格納されているオブジェクトにアクセスします。しかし、jsp:useBeanは、古くからのものです。実際にはMVCフレームワークを使用して、JSPからJavaとjsp:xxxタグを使用しないでください。 –
私はスコープ= "アプリケーション"を使用するとjsp:useBeanはすでに新しいBeanを作成しますか? – yossi