課程
/后端開發
/Java
/Struts2入門
如果使用 private String username 這種方式傳參數
我的理解是: 多個用戶訪問時共用一個 Action ?, ?此時會不會對 username這個變量產生 多線程的競態呢?
2015-08-15
源自:Struts2入門 4-8
正在回答
?Struts 2 的 Action 對象為每一個請求產生一個實例,因此,雖然在Action中定義了很多全局變量,也不存在線程安全問題。Struts 2框架在處理每一個用戶請求的時候,都建立一個單獨的線程進行處理,值棧ValueStack也是伴隨著局部線程而存在的。在該線程存在過程中,可以隨意訪問值棧,這就保證了值棧的安全性。在Struts 2中,ActionContext是一個局部線程,這就意味著每個線程中的ActionContext內容都是唯一的。所以開發者不用擔心Action的線程安全。
藏紅 提問者
舉報
本教程帶你踏上Struts2學習之旅,對Struts2進行更深入講解
1 回答關于ModelDriven傳數組的問題
4 回答關于form表單里的action和配置文件里的action
5 回答默認action問題
3 回答默認Action問題
1 回答默認Action的問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-08-19
?Struts 2 的 Action 對象為每一個請求產生一個實例,因此,雖然在Action中定義了很多全局變量,也不存在線程安全問題。Struts 2框架在處理每一個用戶請求的時候,都建立一個單獨的線程進行處理,值棧ValueStack也是伴隨著局部線程而存在的。在該線程存在過程中,可以隨意訪問值棧,這就保證了值棧的安全性。在Struts 2中,ActionContext是一個局部線程,這就意味著每個線程中的ActionContext內容都是唯一的。所以開發者不用擔心Action的線程安全。