我定義了A類和B類。我使用A類中的B類對象。我們可以在請求作用域中定義一個會話作用域對象嗎?
這裏我要在會話範圍中添加類A對象。我知道B對象是在A中定義的,它默認在會話範圍內可用。但我希望B對象應該重新創建或重置每個請求上的值。是否有可能在會話作用域對象內的請求範圍中定義一個對象?
謝謝,那仁
我定義了A類和B類。我使用A類中的B類對象。我們可以在請求作用域中定義一個會話作用域對象嗎?
這裏我要在會話範圍中添加類A對象。我知道B對象是在A中定義的,它默認在會話範圍內可用。但我希望B對象應該重新創建或重置每個請求上的值。是否有可能在會話作用域對象內的請求範圍中定義一個對象?
謝謝,那仁
您可以將session範圍內任何範圍內的對象。 唯一的一點是某個範圍的值將始終存在,直到會話終止。 即使您希望更新會話作用域中的請求作用域中的對象,也可以在每個請求上更新該對象。您需要從每個請求的會話作用域訪問對象並更新它,然後在任何需要的地方使用它。
當然這是可能的,但在分配字段時必須小心。換句話說,您不應該使用new B()
,而是依賴於框架的依賴注入功能來爲您綁定字段。僞代碼:
@Scoped("session")
public class SessionBean {
@Injected
private RequestBean requestBean;
}
@Scoped("request")
public class RequestBean {}
確切的實施過程取決於所使用的DI框架。
感謝您的快速回復..只是想知道我們如何在java編碼中實現這一點。 – Naren 2014-09-24 04:34:16
檢查此鏈接:http://www.journaldev.com/1907/java-servlet-session-management-tutorial-with-examples-of-cookies-httpsession-and-url-rewriting.This將有一定的幫助。 – pd30 2014-09-24 06:35:02