2010-5-16 Struts
1、为什么要使用struts
2、Framework的概念:人们解决相同或者相似问题的方案。
3、Struts的概念和体系结构:MVC框架
4、Struts实践步骤
5、Struts的工作原理
6、Struts的组件
7、Struts配置文件简介
8、Struts标记库
9、错误处理框架
10、校验框架
11、高级特性
12、Struts优缺点
----------------------------------------开始了---------------------------------------
Struts实践步骤
(1)搭建环境:
导入jar包,建立struts-config.xml,在web.xml注册struts中心控制器ActionServlet。
(2)建立ActionForm,实际就是一个JavaBeans用来封装表单元素。以后可以从这里面获取表单提交的数据了,数据是由Action来处理的哦。在struts-config.xml里面注册这个JavaBeans。
(3)建立Action,用于处理request请求,中心控制器要选择一个合适的Action来处理请求,其实就是通过struts-config.xml中action标记的path属性,来找这个Action的。要在struts-config.xml里面注册这个Action,以便中心控制器ActionServlet顺利找到这个Action。Action是从相应的ActionForm里面获取数据进行处理的。
(4)页面访问,用户在页面提交请求是提交到中心控制器的。
struts工作8步骤:
1、读取配置(初始化ModuleConfig对象)
Struts框架中心控制器(ActionServlet)是一个Servlet,在web.xml中配置成自动启动的Servlet。读取配置文件(struts-config.xml)的配置信息,为不同的Struts模块初始化相应的ModuleConfig对象:ActionConfig、ControlConfig、FormBeanConfig、ForwardConfig、MessageResourcesConfig。
2、发送请求
用户提交表单或调用URL向Web应用程序提交一个请求,请求的数据用HTTP协议上传给Web服务器。
3、填充FORM(实例化、复位、填充数据、校验、保存)
(*.do请求)从ActionConfig中找出对应该请求的Action子类,如没有对应的Action,中心控制器直接转发给JSP或静态页面。如有对应的Action且这个Action有一个相应的ActionForm,则ActionForm被实例化并用HTTP请求的数据填充其属性,并且保存在ServletContext中(request或session中),这样它们就可以被其它Action对象或者JSP调用。
4、派发请求
控制器根据配置信息ActionConfig将请求派发到具体的Action,相应的FormBean一并传给这个Action的execute()方法。
5、处理业务
Action一般只包含一个execute方法,它负责执行相应的业务逻辑(调用其它业务模块)。完毕返回一个ActionForward对象,中心控制器通过该ActionForward对象来进行转发工作。
6、返回响应
Action根据业务处理的不同结果返回一个目标响应对象给中心控制器,该目标响应对象对应一个具体的JSP页面或另一个Action。
7、查找响应
中心控制器根据业务功能Action返回的目标响应对象,找到对应的资源对象,通常是一个具体的JSP页面。
8、响应用户
目标响应对象将结果页面展现给用户(JSP)。