J2EE笔记——Struts

来源:互联网 发布:java计算器单选按钮 编辑:程序博客网 时间:2024/06/05 16:57

1. Struts:对于MVC模式的实现,Struts框架是一个很好的选择,MVC模式使得显示(View),控制(Controller),模型(Model)相分离,

     降低了系统各组件之间的耦合性,提高了代码的可重用性。

2. Struts主要是采用servlet和jsp技术实现了MVC设计模式,使显示、控制、模型相分离。

3. Struts与MVC对应的各个组件:

     模型部分:JavaBean,Service Class,用来封装业务数据、业务逻辑和运行状态。javabean常用来表示业务数据或业务实体,service class常用

                         来表示业务逻辑。javabean和service class在应用中被action调用。

     视图部分:JSP文件,用来生成动态网页。ActionForm Bean,是一种javabean,可以用来对表单数据进行操作,保存表单数据,验证表单数据,

                         设置默认值。JSP文件可以读取ActionForm Bean中保存的数据,ActionServlet也可以对表单中的数据进行修改。

     控制部分:包括ActionServlet类,Action类,以及struts-config.xml文件。

                         ActionServlet类:是struts框架的核心组件。负责接收用户的请求,并根据struts-config.xml文件中的配置信息,将用户请求、表单数

                                                        据传递给相应的Action,Action对用户的请求处理后将结果返回给Servlet,servlet负责把结果传递给JSP页面。

                         Action类:用于对程序运行流程的控制,负责处理Servlet传递过来的用户请求,并将处理后的结果返回给servlet。

                         struts-config.xml:负责配置用户请求和Action的映射,供servlet读取,使servlet知道用户的请求应该转到哪个Action去处理。

4.struts的基本工作流程:

   (1)Web服务器启动,初始化ActionServlet,读取struts-config.xml文件中的配置信息,并将这些信息分发到一些对象中,为后期处理做准备。

   (2)用户发出请求,ActionServlet接收请求,查找和用户请求匹配的Action映射对象(ActionMapping)是否存在,如果不存在,返回错误信息;

             如果存在,则将请求以及ActionForm对象中的数据传递给处理请求的Action。

   (3)Action调用JavaBean,并结合ActionForm中的数据,对用户的请求做出处理。

   (4)Action处理完毕,返回一个ActionForward对象给ActionServlet。ActionForward对象指定了转发的目标对象,可以是某个JSP文件,或者新

             的Action对象。

   (5)ActionServlet根据ActionForward的指向,将对用户请求处理的结果传送相应的JSP文件,或者转发到一个新的Action对象,继续从第2步进

             行处理。

5. web.xml和struts-config.xml是struts应用中的两个重要配置文件。web.xml文件完成了struts的初始化加载,struts-config.xml是struts的核心配

     置文件,在这个文件里描述了所有的struts组件。

6. 配置web.xml,包括ActionServlet,依靠servlet和servlet-mapping两个元素。欢迎页,错误页,struts标记

7. struts标记(标签):Html,Bean,Logic,Nested,Tiles,在JSP页面开始,引入struts标记,通过前缀的方式,使用这些标记。

8. struts-config.xml是struts框架中一个重要的配置文件,通过该文件可以完成对actionform的定义,用户请求和action之间的映射,页面的跳转

     以及其他较为重要的配置。共有8个,顺序不可改变。

     配置数据库访问——data-sources元素。程序中两种方法获取数据源,1.利用Action类中的getDataSource方法;2.利用ServletContext实现。

     配置ActionFormBean——form-beans元素。Action通过form-bean,调用ActionFormBean,是视图层和控制层之间相互联系的桥梁。定义

             有静态和动态两种方式。

     配置全局异常处理——global-exceptions元素。

     配置全局转发关系——global-forwards元素。eg:mapping.findForward("welcome").welcome就是转发的标示。

     配置Action映射——action-mappings元素。

     配置控制类——controller元素。默认控制类是org.apache.struts.action.RequestProcessor。

     配置资源包——message-resources元素。有一系列资源文件组成,默认扩展名为properties。

     配置插件——plug-in元素。struts启动时被初始化,可以用来完成一些初始化的工作,如数据初始化,建立数据库的连接。

9. Struts的控制部分主要包括struts的控制机制和struts中一个核心的servlet,即ActionServlet。

10. struts控制部分由ActionServlet,Action,RequestProcessor,ActionMapping,ActionForward以及其他附属组件来实现。

11. ActionServlet类继承自HttpSerlvet,实现了init(),doGet(),doPost()以及destroy()方法。

12. Struts的模型部分主要包括两个部分:业务实体模型,业务逻辑模型。struts并没有实现模型的组件。

13. Struts的视图部分抓哟包括JSP和ActionForm Bean。bean中包含reset和validate方法。actionform作为execute的参数,被action调用,返回

       actionforward对象。

14. Tiles标签,用来建立复合页面<tiles:insert>,使用tiles框架和Action可以减少页面数量,配置tiles-defs.xml文件。

15. 在web应用中,对异常的处理有相应的机制,可以通过程序处理异常,JSP页面来处理异常,也可以通过配置文件来处理异常。

16. Validator验证框架将验证规则和验证逻辑在配置文件中定义。
原创粉丝点击