`

Struts的核心类

阅读更多
1.ActionServlet类:
       是一个前端控制器,将request转发给RequestProcessor来处理。提供了一组能够被Action对象使用的方法:
(1) 动态的添加和删除,只影响应用程序当前的实例
      public void addFormBean(ActionFormBean formBean)
      public void removeFormBean(ActionFormBean formBean)
      public void addForward(ActionForward actionForward)
      public void removeForward(ActionForward actionForward)
      public void addMapping(ActionMaping actionMapping)
      public void removeMapping(ActionMaping actionMapping)
(2) 根据名称查找对象
      public ActionFormBean findFormBean(String name)
      public ActionForward findForward(String name)
      public ActionMapping findMapping(String name)
(3) 用来处理数据源
      public void addDataSource(String key, DataSource ds)
      public DataSource findDataSource(String key)
(4) 使用destroy()方法结束ActionServlet
(5) 使用reload()方法从struts配置文件将信息重新加载。

2.ActionMapping类:
       ActionMapping类是ActionConfig的子类,实质上是对struts-config.xml的一个映射类,从中可以取得所有的配置信息。将特定请求映射到特定Action的相关信息存储在ActionMapping中,ActionServlet将ActionMapping传送到Action类的perform()方法,Action将使用ActionMapping的findForward()方法,此方法返回一个指定名称的ActionForward,这样Action就完成了本地转发。若没有找到具体的ActionForward,就返回一个null。ActionMapping类的方法:
(1) 可以在映射中动态添加ActionForward
      public ActionForward findForward(String name)
(2) 可以返回与映射关联的表单bean
      public void addForward(ActionForward forward)
(3) 可以返回映射的属性域(回话或请求)
      public String getName()
(4) 可以返回映射的作用域
      public String getScope()

3.RequestProcessor类
       根据提交过来的url,如*.do从ActionMapping中得到相应的ActionForm和Action,然后将request参数对应到ActionForm中,进行验证。如果验证通过则调用Action的execute()方法来执行Action,最终返回ActionForward。

4.ActionForward类:
       是对mapping中一个forward的包装,对应于一个url。

5.Action类:是框架包的核心,链接客户请求和业务操作,真正实现应用程序的事务逻辑,负责处理请求。其方法有:
(1) 所有Action类都扩展org.apache.struts.action.Action类,且覆盖类中定义的一个execute()方法。
      处理非HTTP请求:
      public ActionForward execute(ActionMapping action, ActionForm form,
                                                ServletRequest request, ServletResponse response)
                                    thorws IOException, ServletException
      处理HTTP请求:
      public ActionForward execute(ActionMapping action, ActionForm form,
                                                HttpServletRequest request, HttpServletResponse response)
                                    thorws IOException, ServletException
(2) 可以获得或设置与请求相关联的区域:
      public Local getLocal(HttpServletRequest request)
      public void setLocal(HttpServletRequest request, Local local)
(3) 为应用程序获得消息资源:
      public MessageResources getResources()
(4) 检查用户是否点击表单上的“取消”键,如果是,返回true:
      public Boolean isCancelled(HttpServletRequest request)
(5) 当应用程序发生错误时,Action类存储错误信息:
      public void saveErrors(HttpServletRequest request, ActionErrors errors)

6.DispatchAction类:
       Struts提供了多种Action供选择使用。普通的Action只能通过调用execute执行一项任务,而DispatchAction可以根据配置参数执行,而不是仅进入execute()函数,这样可以执行多种任务。如insert,update等。LookupDispatchAction可以根据提交表单按钮的名称来执行函数。

Struts通过提供一个控制器Servlet实现了Sun的Model2架构,这个控制器可以用来管理jsp页面和其他表现设备之间的流程.Struts通过使用ActionForward和ActionMapping来保证表现层之外的控制流决策来实现MVC层模式.JSP可以引用一个逻辑目标.控制器组建在运行时提供准确的URI.

    Struts 的核心类:

    ActonForward   :     用户指向或视图选择

    ActionForm   :       状态改变的数据

    ActionMapping  :     状态改变事件

    ActionServlet    :     控制器,接受用户请求和状态改变,以及发出视图选择

    Action          :     控制器的一部分,与模型交互,执行状态改变或状态查询,以及告诉ActionServlet下一个选择的视图

   

   Struts配置文件:

    ApplicationRwsources.properties  :  存储本地化信息和标签,以使应用可以国际化.

    struts-config.xml    :   存储控制器对象的缺省配置,包括模型支持的用户指向,状态改变,状态查询

?/P>

    为了将Struts配置数据暴露给视图,框架以jsp标签的形式提供了大量的助手类,

    struts-html.tld :    扩展HTML Form的JSP标记

    struts-bean.tld :    扩展处理JavaBean的JSP标记

    struts-login.tld :    扩展测试属性值的JSP标记


分享到:
评论

相关推荐

    struts核心类用法

    struts核心类(Action,ActionServlet,Actionform)的用法及实例

    struts核心的jar(只是struts运行所需的核心jar)

    基于struts实现的javaweb项目,其中包含了struts运行所需的核心jar资源

    Struts2 核心jar包

    Struts2核心jar包

    Struts2核心包

    Struts2最新版本2.2.1中所设计的核心库文件,包括以下内容: struts2-core-2.2.1.jar:Struts2框架的核心类库。 xwork-core-2.2.1.jar:Xwork核心类库,Struts2在其上构建。 ognl-3.0.jar:对象图导航语言(Object ...

    struts2核心jar包

    struts核心包 2.freemarker-2.3.18.jar freeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具 3.commons-logging-1.1.1.jar Jakarta的通用日志记录包 4.ognl-3.0.3.jar 支持ognl表达式 5.xwork-core-2.3....

    struts框架ppt文档

    Struts 概述 Struts 架构开发入门 Struts核心组件及运行机制详述 Struts应用进阶 第五章 Struts标记库

    struts入门电子书

    Struts与MVC框架介绍; 使用Struts框架开发第一个应用;...Struts核心组件介绍; Struts配置; 开发国际化的Struts应用; Struts框架中的异常处理; 在Struts框架中使用数据库连接池; Struts自定义标记的使用

    Struts1.x 的核心源码(研究下框架怎样构成)

    经过老师讲解,猜写的Struts1.x 的核心源码 不含国际化,标签库,和数据验证,很简单

    struts2实验报告

    开发环境: Windows操作系统 开发工具: Myeclipse+Jdk+Tomcat+MySQL数据库 要求:标题之间必须有过渡段;正文用小四号字体,段落格式首行缩进2个字符,1.5倍行距;论文中的表必须是三线表,图必须用vs画,图和表中的...

    Struts框架的应用研究.pdf

    文中介绍了程序框架和 Struts的概念 ,详细描述了 Struts的工作原理 ,讨论了 Struts核心组件的构成及其配置 应用的具体方法.同时 ,对采用 Struts进行应用系统开发的方法及流程进行了阐述 ,并以作者参与的电力营销...

    Struts2实战.pdf

    资深开发人员深入剖析Struts2核心概念和组件 学习Struts不可不读 作者简介 作者:(美国)Donald Brown (美国)Chad Michael Davis (美国)Scott Stanlick 译者:马召 等 Donald Brown,Atlassian软件系统公司托管...

    ·Struts2配置文件介绍 超级详细

    ·Struts2配置文件介绍 struts.xml action package ·Struts2配置文件介绍 struts.xml action package

    struts1和struts2的区别

    对于有着丰富的Struts1.x开发经验的朋友来说,都十分的清楚Action是整个Struts框架的核心内容,当然Struts2也不例外。不过,Struts1.x与Struts2的Action模型很大的区别。 Struts2和Struts1.x的差别,最明显的就是...

    Struts2基本原理

    Struts 2框架本身大致可以分为3个部分:核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件。 核心控制器FilterDispatcher是Struts 2框架的基础,包含了框架内部的控制流程和处理机制。...

    struts2-demo

    struts2-core-2.x.x.jar : Struts2 框架的核心类库 b. xwork-core-2.x.x.jar: XWork类库,Struts2在其上构建 c. ognl-2.6.x.jar: 对象图导航语言(Object Graph Navigation Language),Struts2框架通过其读写对象的...

    Struts2详细工作流程

    Struts 2框架本身大致可以分为3个部分:核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件...Struts 2框架按照模块来划分,可以分为Servlet Filters、Struts核心模块、拦截器和用户实现部分。

    struts2资源包

    struts2-core-2.1.8.jar:Struts 2框架的核心类库 xwork-core-2.1.6.jar:XWork类库,Struts 2在其上构建 commons-logging-1.1.1.jar :日志包,Struts 2框架使用这个日志包来支持Log4J和JDK 1.4+的日志记录。

    精通Struts基于MVC的Java Web设计与开发 孙卫琴 光盘

    第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。第8章到第9...

    精通 Struts:基于 MVC 的 JavaWeb 设计与开发(PDF)

    第4章到第7章深入探讨了Struts框架的核心组件ActionServlet和RequestProcessor的实现原理,详细介绍了开发Struts应用的模型、视图和控制器的各种技术,细致的描述了Struts配置文件的每个元素的使用方法。第8章到第9...

    Struts2教程

    3. 编写 ActionForm 类(一般从 org.apache.struts.action.ActionForm 类继承),这一步 不是必须的,如果要接收客户端提交的数据,需要执行这一步。 4. 在 struts-config.xml 文件中配置 Action 和 ActionForm 。 5...

Global site tag (gtag.js) - Google Analytics