2018年9月20日21:33:25 只涵盖了 listener, filter , servlet的启动顺序,struts2还有拦截器什么的。。会接着更新
结论:
1、构造优先级Listener > Filter > servlet(即使配置<load-on-startup>)
2、web.xml配置顺序不影响listener,filter,servlet的顺序,但是同类型的组件从上至下顺序执行。
3、对象构造阶段都可以在tomcat加载时创建,但注意servlet需要配置下<load-on-startup>,0最高,正数的值越大启动越延后,但只要配置都在tomcat启动阶段执行。若servlet不配置<load-on-startup>则在调用时,在f执行ilter前构造。
4、ServletContextListener.contextInitialized是监听web程序的构建。
5、request请求发送过来 先执行监听器中的ServletRequestListener.requestInitialized再执行Filter最后再执行web组件(Fillter链或servlet)。
6.session是由request获取的,所以当执行request.getSession()时即使在Filter中也会执行HttpSessionListener.sessionCreated;