1.Struts2结果集顶级接口
2.Result接口的上一层是一个抽象类,抽象类的作用是实现共同的方法,让子类去实现不同的方法。
3.StrutsResultSupport抽象类的上一层是一个具体实现类,它重写了StrutsResultSupport中的doExecute(lastFinalLocation,invocation)方法。
结果集的调用过程
一个最简单的自定义结果集的例子:
1.代码结构
2.先写一个自定义的结果集类NjusttzResult.java【注意该类继承StrutsResultSupport】
3.创建一个Action类,并加入测试方法
4.在struts.xml中配置结果集
5.在本包下配置struts_customresult.xml文件
这里需要注意是的struts.xml中自定义的结果集写在一个package里,该package继承了struts-default.xml,所以在struts_customresult.xml中的package只需要继承njusttz这个package就可以不光继承自定义的结果集,还可以继承struts-default.xml了。
从这里就可以得到一个启示:对于Struts来说,它的拦截器只能对于包来产生作用,如果让拦截器对整个项目起作用呢?所以我们可以建一个基础的package,将拦截器写在该package下,然后让每个包下的配置文件继承该package即可。