Struts2中摒弃掉了Struts1中对servlet各种对象的直接引用,增加了代码的灵活性。在开发各环节中经常用到的各种属性获取、存放则采用封装的方式予以提供,以下为实例:
java代码中的属性操作。
//封装类获取属性
public String execute(){
ActionContext ctx = ActionContext.getContext(); //获取HttpServletRequest属性集合
Map appli = ctx.getApplication(); //获取ServletContext 全局变量集合
Map session = ctx.getSession(); //获取HpptSession 属性集合
appli.put("app", "全局范围"); //往ServletContext中放入
session.put("session", "session范围");//往session中放入
ctx.put("request", "request范围"); //往request中放入
return "success";
}
public String test(){
HttpServletRequest request = ServletActionContext.getRequest(); //获取HttpServletRequest
ServletContext ctx = ServletActionContext.getServletContext(); //获取ServletContext
HttpSession session = request.getSession(); //获取HttpSession
return "success";
}
页面数据调用方式可以采用jstl等方式对各种对象中的数据进行遍历、存取等操作。