`
萝__卜
  • 浏览: 4927 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Struts2 Servlet解耦

阅读更多
struts2对应封装
HttpServletRequest-------->RequestMap
HttpServletSession-------->SessionMap
ServletContext-------->ApplicationMap


ActionContext与Servlet api的解耦

在com.opensymphony.xwork2.ActionContext类中存在一个Map对象的context 类

首先通过ActionContext类的静态方法getContext()方法获得当前相关的一个ActionContext实例

public Object get(Object key)方法,就相当于HttpServletRequest.getAttribute()
public void put(Object key, Object value)对应HttpServletRequest.setAttribute()

public Map<String, Object> getParameters()对应HttpServletRequest.getParameterMap()
public Map<String, Object> getSession()方法对应javax.servlet.http.HttpSession
session.put(Object key, Object value)对应Servlet编程中的HttpSession.setAttribute(…)

也就是说,ActionContext能够获得三个Map类型的Request, Session, Application对象
ActionContext有一个好处,就是它已经将底层的Servlet进行了转化,比如它将session转化成Map

所以在struts中用session,request,Application完全可以创建一个map对象的

有好的放方法,望诸位大神给出意见,我好学习一下,我只是个小菜鸟。单纯看法
1
0
分享到:
评论

相关推荐

    struts2课程笔记

    struts2知识点:处理流程,基本配置,与servlet的API解耦,结果类型,通配符和动态方法的调用,类型转换,文件上传,拦截器,表单验证,国际化,OGNL表达式,UI标签,模型驱动,防止表单重复提交,项目练习知识点:...

    spring+struts2+hibernate框架说明

    Struts 是一个很好的MVC框架,主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。Spring 提供了管理业务对象的一致方法,并鼓励注入对接口编程而不是对类编程的良好...

    谈谈你对Struts的理解。

    1. struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类。我们可以在web.xml文件中将符合某种特征的所有请求交给这个Servlet处理,这个...

    Struts2获取参数的三种方法总结

    Struts2不在建议我们使用原生的servletAPI来获取参数,这样做的目的是事项Struts2的action与servlet进行解耦,可以在日后更加方便的对action类进行测试。 Struts2获取参数的三种办法: (1)属性驱动方式 (2)...

    ssh资源jar包 学习ssh的都能用不用担心你学到哪个部分

    适用于初学ssh的人士绝对能用Struts 是一个很好的MVC框架,主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。  Spring 提供了管理业务对象的一致方法,并鼓励...

    SpringMVC每个程序员必须掌握,简单易学快来看看

    使用Spring可插入的MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts1(现在一般不用),Struts 2(一般老项目使用)等等。 SpringMVC是spring为展现层提供...

    Spring面试题

    ActionServler根据Struts-config.xml文件配置好的设置决定是否需要表单验证,如果需要就调用ActionForm的 Validate()验证后选择将请求发送到哪个Action,如果Action不存在,ActionServlet会先创建这个对象,然后...

    火炬博客系统7

    Struts框架中Controller角色是由一个中心Servlet类和众多Action类合作扮演的,中心Servlet类为控制器提供中心控制点来初步处理所有的用户请求,并选择一个Action类处理具体业务逻辑。 Struts负责管理用户的请求...

    火炬博客系统6

    Struts框架中Controller角色是由一个中心Servlet类和众多Action类合作扮演的,中心Servlet类为控制器提供中心控制点来初步处理所有的用户请求,并选择一个Action类处理具体业务逻辑。 Struts负责管理用户的请求...

    火炬博客系统5

    Struts框架中Controller角色是由一个中心Servlet类和众多Action类合作扮演的,中心Servlet类为控制器提供中心控制点来初步处理所有的用户请求,并选择一个Action类处理具体业务逻辑。 Struts负责管理用户的请求...

Global site tag (gtag.js) - Google Analytics