全站资源开放下载,感谢广大网友的支持
链接失效请移步职业司平台
非盈利平台

非盈利平台

只为分享一些优质内容

Java帮帮-微信公众号

Java帮帮-微信公众号

将分享做到极致

微信小程序

微信小程序

更方便的阅读

职业司微信公众号

职业司微信公众号

实时动态通知

安卓APP

安卓APP

我们从此不分开

程序员生活志-公众号

程序员生活志-公众号

程序员生活学习圈,互联网八卦黑料

支付宝赞助-Java帮帮社区
微信赞助-Java帮帮社区

Struts2配置文件加载顺序+请求流程

25
发表时间:2018-01-16 17:08作者:奋斗蒙来源:Java帮帮

Struts2配置文件加载顺序

通过查看StrutsPrepareAndExecuteFilter源码可以得到答案!

  

此处,我们以及清晰了看到了该类加载配置文件的顺序,我们依次围绕标号查看对应方法产生的文件即可。

对应产生文件依次如下:

init_DefaultProperties(); //[1]----  org/apache/struts2/default.properties

init_TraditionalXmlConfigurations(); //[2] --- struts-default.xml,struts-plugin.xml,struts.xml

init_LegacyStrutsProperties(); //[3] --- 自定义struts.properties

init_CustomConfigurationProviders(); //[5]  ----- 自定义配置提供

init_FilterInitParameters(); //[6] ----- web.xml

init_AliasStandardObjects(); //[7] ---- Bean加载


结论 :【前三个是默认的,不用关注,后面三个需要注意】

default.properties 该文件保存在 struts2-core-2.3.7.jar org.apache.struts2包里面  (常量的默认值)
struts-default.xml 该文件保存在 struts2-core-2.3.7.jar  Bean、拦截器、结果类型
struts-plugin.xml 该文件保存在struts-Xxx-2.3.7.jar  (在插件包中存在 ,配置插件信息 struts-config-browser-plugin-2.3.7.jar里面有
struts.xml 该文件是web应用默认的struts配置文件 (实际开发中,通常写struts.xml
struts.properties 该文件是Struts的默认配置文件  (配置常量 )
web.xml 该文件是Web应用的配置文件 (配置常量 )

后加载配置文件中修改的常量的值会覆盖前面配置文件修改的常量的值!

Struts的配置流程。(请求流程)

请求(.action)---->经过StrutsPrepareAndExecuteFilter 核心控制器---->进入到Struts2的拦截器Interceptor(实现代码功能)----->通过action的名称找对应的Action类----->执行Action类的execute方法----->通过execute方法中返回的字符串,在Struts.xml中找对应的结果页面(result)【在action执行之前,执行了defaultStack拦截器栈


文章分类: 技术面试
分享到:
Java帮帮学习群生态

Java帮帮学习群生态

总有一款能帮到你

Java学习群

Java学习群

与大牛一起交流

大数据学习群

大数据学习群

在数据中成长

九点编程学习群

九点编程学习群

深夜九点学编程

python学习群

python学习群

人工智能,爬虫

测试学习群

测试学习群

感受测试的魅力

Java帮帮生态承诺

Java帮帮生态承诺

一直坚守,不负重望

初心
勤俭
诚信
正义
分享
友链交换:加帮主QQ2524138991 留言即可 24小时内答复  
业司
满吉教育资讯
会员登录
获取验证码
登录
登录
我的资料
留言
回到顶部