Struts框架是很好的贯彻了mvc模型,而且也使得jsp页面真正的只体现在view上面,当然在原有的基础上对原来servlet的一些东西加以翻新,毕竟为了降低程序的耦合性,使得工程本身更有条例,也是进一步实现MVC模型吧。
在调用session和application或者request等常用的页面信息传递或存储的工具的时候,在struts2中不再使用servlet,而是建立了一个类似的map,实现相同的功能,所以我们有多种方式可供选择:
1.ActionContext间接访问,ActionContext.getContext().getSession()=>map或者ActionContext.getContext().getApplication()=>map
2.非IOC直接访问, 即是直接调用servlet的相关元素:
ServletApplicationContext.getRequest()
ServletApplicationContext.getResponse()
ServletApplicationContext.getServeltContext()等等;
3.IOC直接访问:
RequestAware: public void setRequest(Map<String,Object> arg0)
SessionAware: public void setSession(Map<String,Object> arg0)
ApplicationAware: public void setApplication(Map<String,Object> arg0)
ServletContextAware: public void setServletContext(ServletContext arg0)
ServletRequestAware: public void setServletRequest(HttpServletRequest arg0)
ServletResponseAware: public void setServletRsponse(HttpServletResponse arg0)