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文件
Myclass myclass= new MyCass();
myclass.LoadDataFromFile();
myclass.UseTheData();
我知道我應該在jsp文件
使用JSTL如果我使用範圍= 「會議」 將在數據加載將保持?
<jsp:useBean id="myclass" class="MyClass" scope="session">
<jsp:setProperty name="myclass" property="input" value="blabla" />
</jsp:useBean>
如果我在構造函數中進行數據加載,我可以確保該類只是init一次嗎?
我的java類不知道這個servlet,所以我需要將數據從servlet傳遞給我的類,對吧? – yossi
使用scope =「application」替換scope =「session」,您將訪問存儲在ServletContext屬性中的對象。但jsp:useBean真的是古代的東西。您應該真正使用MVC框架並停止使用JSP中的Java和jsp:xxx標記。 –
我已經繼承了代碼,將所有內容移動到框架中現在不是一個選項:(如果我使用scope =「application」,那麼jsp:useBean只會創建一個新的bean,如果沒有一個? – yossi