java面试题网

普通会员

257

帖子

9

回复

151

积分

楼主
发表于 2018-03-22 16:45:45 | 查看: 384| 回复: 0

①Struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个servlet名为Action

Servlet,或是ActionServlet的子类。我们可以在web,xml文件中将符合某种特征的所有请求交给Servlet处理,这个Servlet再参照文件(通长为/WEB-INF/struts.cfg.xml)将各个请求分别分配给不同的action去处理;(一个扩展知识点:Struts的配置文件可以有多个,可以按照模块配置各自的配置文件,这样可以防止配置文件的过渡膨胀)

②ActionServlet把请求交给action去处理之前,会将参数封装到一个formbean对象(就是一个java类,这个类中每个属性对应一个请求参数),封装成一个什么样的formbean对象呢?看配置文件。

③要说明的是,ActionServlet把formbean对象传递给action的execute方法之前,可能会调用formbean的validate方法进行校验,只有校验通过后,才会将这个formbean对象传递给action的execute方法,否则,它将返回一个错误页面,这个错误页面有input属性指定,(看配置文件)作者为什么将这里命名为input属性,而不是error属性呢?

④action执行完成后,要返回结果视图,这个结果视图是用一个ActionForward对象看来表示的,actionforward对象通过struts-config.xml配置文件中配置关联到某个jsp页面,因为程序中使用的是在struts-config.xml配置文件,为jsp页面设置的逻辑名,这样可以实现action程序代码与返回的jsp页面名称的解耦。



您需要登录后才可以回帖 登录 | 立即注册

java面试题网无聊看看网与java建站系统提供技术支持V2.1 网站地图 © 2016-2018