黑马程序员技术交流社区

标题: Struts的理解 [打印本页]

作者: Thunder_-_Li    时间: 2013-10-17 11:57
标题: Struts的理解
1. struts是一个按MVC模式设计的Web层框架,
其实它就是一个大大的servlet,这个Servlet名为ActionServlet,
或是ActionServlet的子类。我们可以在web.xml文件中将符合某
种特征的所有请求交给这个Servlet处理,这个Servlet再参照一个
配置文件(通常为/WEB-INF/struts-config.xml)将各个请求分别
分配给不同的action去处理。
一个扩展知识点:struts的配置文件可以有多个,可以按模块配置
各自的配置文件,这样可以防止配置文件的过度膨胀;
2.ActionServlet把请求交给action去处理之前,会将请求参数封装
成一个formbean对象(就是一个java类,这个类中的每个属性对应一个请求参数),
封装成一个什么样的formbean对象呢?看配置文件。
3.要说明的是, ActionServlet把formbean对象传递给action的execute方法之前,
可能会调用formbean的validate方法进行校验,
只有校验通过后才将这个formbean对象传递给action的execute方法,
否则,它将返回一个错误页面,这个错误页面由input属性指定,
(看配置文件)作者为什么将这里命名为input属性,而不是error属性
,我们后面结合实际的运行效果进行分析。
4.action执行完后要返回显示的结果视图,这个结果视图是用一个ActionForward对象来表示的,
actionforward对象通过struts-config.xml配置文件中的配置关联到某个jsp页面,
因为程序中使用的是在struts-config.xml配置文件为jsp页面设置的逻辑名,
这样可以实现action程序代码与返回的jsp页面名称的解耦。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2