Struts2中使用Session的两种方法
生活随笔
收集整理的這篇文章主要介紹了
Struts2中使用Session的两种方法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在Struts2里,如果需要在Action中使用到session,可以使用下面兩種方式: 通過ActionContext 類中的方法getSession得到 Action實現(xiàn)org.apache.struts2.interceptor.SessionAware接口的方式來對session進行操作 下面先看一個采用第一種方式,在action中得到session的例子 public class SessionTestAction extends ActionSupport { public String execute() { ActionContext actionContext = ActionContext.getContext(); Map session = actionContext.getSession(); session.put("user", "Test User"); return SUCCESS; } } 在這個例子中,通過ActionContext得到session,并往session里放置一個key為user,值為Test User的內(nèi)容。 下面是一個實現(xiàn)org.apache.struts2.interceptor.SessionAware接口來對session操作的例子 public class SessionTest1Action extends ActionSupport implements SessionAware { private Map session; public void setSession(Map session) { this.session = session; } public String execute() { this.session.put("user", "Test User 1"); return SUCCESS; } } 在這個例子中實現(xiàn)了接口SessionAware中的setSession方法。 上面兩種方式都可以得到session,能實現(xiàn)的功能都一樣。推薦通過第二種方式來使用session,便于單體測試,用第二種方式,只需要構(gòu)造一個Map就可以對action進行單體測試了。 注銷session的方法: // 注銷 public String logout() throws Exception { ? ((org.apache.struts2.dispatcher.SessionMap<String, Object>) this.session).invalidate(); ? return SUCCESS; }
希望多多交流,多多關(guān)注,共同成就夢想
總結(jié)
以上是生活随笔為你收集整理的Struts2中使用Session的两种方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: struts2访问session的两种方
- 下一篇: struts2 中的 addAction