1.服务器启动:
加载项目web.xml
创建struts核心过滤器对象,执行filter--》init()
struts-default.xml 核心功能的初始化
struts-plugin.xml struts相关插件
struts.xml 用户编写的配置文件
2.访问:
用户访问action,服务器根据访问路径名称,找对应的action配置,创建action对象
执行默认的拦截器栈中定义的18个拦截器
执行action的业务逻辑方法
3.struts-default.xml详解
目录:struts2-core-2.3.4.1.jar/struts-default.xml
内容:
1,指定节点struts在运行的时候创键的队形类型
2.执行struts-default包,在用户的配置中,是需要继承次包的
3.跳转的结果类型
dispatcher 转发,不指定默认的转发
redirect 重定向
redirectAction 重定向到下一个action
stream 位文件下载的时候使用
json 将传回的是是json数据的时候使用
4.定义了所有的拦截器:一共有32个拦截器,为了拦截器引用方便,可以通过定义栈引入拦截器,如果使用了此栈,栈中的拦截器都会执行,defaultStack默认的栈,其中定义默认要执行的18个拦截器
5.默认执行的拦截器、默认的action
6.拦截器和过滤器的区别:拦截器可以拦截action,不可以使用页面,但是过滤器是可以过滤所有的数据,包括页面。拦截器是struts中的,只在struts中是以,过滤器是servlet中的概念,可以在任何地方使用。
7. 用户访问时候按顺序执行18个拦截器;
8.先执行Action类的创建,再执行拦截器; 最后拦截器执行完,再执行业务方法