Struts2中的actioncontext對象

actioncontext本質是一個map結構,每次請求的時候到了過濾器的時候將會被PrepareOperations對象建立一個新的actioncontext,建立的時候將會複製一份request對象的數據進來,而且採用threadlocal結構進行存放數據,因此actioncontext是線程安全的,而actioncontext裏面存的是request,session,application,local等對象數據。安全

獲actioncontext對象經過ActionContext.getcontext()方法進行獲取,因爲是經過靜態方法進行獲取,因此即便不是一個action類只要在同一個線程中也能夠獲取actioncontext對象,因此service層,dao層均可以處理actioncontext中的數據I。session

注意:因爲actioncontext對象是在發起請求以後在prepareoperation對象中建立的,因此當沒有發起請求的時候還不能獲取actioncontext對象,例如filter裏面的init()方法中不能獲取。app

相關文章
相關標籤/搜索