struts2中Convention中的basePackage与locators配置种种
来源:互联网 发布:json txt格式转换器 编辑:程序博客网 时间:2024/04/28 20:53
用了Convention插件来实现所谓的0配置,
1.
这个属性用于约定Action 类的根包(这个包是Java 类的包,而不是Struts.xml中配置的<package>节点)
例如:
在一个项目中有这样一系列的Java 包,那么当指定convention的这个属性,Struts 框架就会在你访问特定的URL时会自动的找到所要的请求的实现类。
当你在浏览器中输入: http://localhost:8080/HelloWorld.action ,Struts会自动的找到并执行com.ZTest.web.action.HelloWorldAction.java类。
当你在浏览器中输入: http://localhost:8080/test/aaa.action ,Struts会自动的找到并执行com.ZTest.web.action.test.aaaAction.java类。
2.
这个属性用于约定Action类执行完毕以后返回资源的结果路径,###必须以 "/" 开头,
例如:
当你在浏览器中输入: http://localhost:8080/HelloWorld.action ,Struts会自动的找到并执行com.ZTest.web.action.HelloWorldAction.java类,并放回到WEB-INF/ruiri/HelloWorld.jsp。
当你在浏览器中输入: http://localhost:8080/test/aaa.action ,Struts会自动的找到并执行com.ZTest.web.action.test.aaaAction.java类, ,并放回到WEB-INF/ruiri/test/HelloWorld.jsp 。
3.
###是否将Action类转换成小写
当一个类的类名是多个单词组合起来的时候,例如 HelloWolrdAction,如果指定了这个属性,则访问的地址必须是:
4.
这个属性是约定当一个Java 类有多个单词组合成的时候,映射的URL地址的时候访问的格式的分隔符。
如果不指定这个属性,Struts默认的分隔符是 “-”,例如 HelloWorldAction 则访问的URL 是Hello-World.action
如果指定这个属性是上面的格式,则是没有分隔符,会按照Java 类名直接映射,例如 HelloWorldAction 则访问的URL 是HelloWorld.action
5
这个属性指定的是Strtus.xml中配置的 <package>节点的父节点。(有什么用?可能就是用于定义全局的Result 吧,这个本人也没深入的研究过)
6
确定搜索包的路径。只要是结尾为action的包都要搜索。
详细讲解一下这个属性,因为我刚开始的时候被这个属性搞晕了,希望我的解释能帮助和我有过同样疑问的友人。
例如:我们有这样一些类:
com.ZTest.web.action.AAAAAction
com.Ztest.web.action.BBBBAction
com.Ztest.web.action.test/CCCCAction
com.Ztest.web.action.test/DDDDAction
com.Ztest.web.action.test/first/EEEEAction
com.Ztest.web.action.test/first/FFFFAction
如果,我设置这个属性的值为 action 那么 我们访问这几个类得URL就是
http://localhost:8080/ZTest/AAAA.action
http://localhost:8080/ZTest/BBBB.action
http://localhost:8080/ZTest/test/CCCC.action
http://localhost:8080/ZTest/test/DDDD.action
http://localhost:8080/ZTest/test/first/EEEE.action
http://localhost:8080/ZTest/test/first/FFFF.action
而每个URL对应的资源文件必须是下面的格式:(按照本文中的result.path配置的结果)
/WEB-INF/ruiri/AAAA.jsp
/WEB-INF/ruiri/BBBB.jsp
/WEB-INF/ruiri/test/CCCC.jsp
/WEB-INF/ruiri/test/DDDD.jsp
/WEB-INF/ruiri/test/first/EEEE.jsp
/WEB-INF/ruiri/test/first/FFFF.jsp
也就是说:
struts.convention.package.locators=action 就是相当于下面的解释
com.ZTest.web.action.AAAAAction
com.ZTest.web.action.test.CCCCAction
com.ZTest.web.action.test.first.EEEEAction ->
当然对应的资源的文件路径就是:
/WEB-INF/ruiri/AAAA.jsp
/WEB-INF/ruiri/test/CCCC.jsp
/WEB-INF/ruiri/test/first/EEEE.jsp
区别:
struts.convention.package.locators=action
确定搜索包的路径。只要是结尾为action的包都要搜索。
struts.convention.package.locators.disable=false
struts.convention.package.locators.basePackage=com.xxx.web.action
basePackage按照默认不用配置,如果配置,只会找以此配置开头的包。
locators及locators.basePackage都是一组以逗号分割的字符串。
- struts2中Convention中的basePackage与locators配置种种
- <转>struts2中Convention中的basePackage与locators配置种种
- struts2中Convention中的basePackage与locators配置种种
- struts2中Convention中的basePackage与locators配置种种
- struts2中Convention中的basePackage与locators配置种种
- struts2 中,[struts.convention.package.locators] 与 [struts.convention.action.packages] 的区别
- struts2 中,[struts.convention.package.locators] 与 [struts.convention.action.packages] 的区别
- Struts2中的零配置与CoC(Convention over Configration)约定优于配置
- [struts.convention.package.locators] 与 [struts.convention.action.packages] 的区别
- [摘]主题: Struts2中的零配置与CoC(Convention over Configration)
- STRUTS2 Convention零配置
- struts2 convention配置中常见配置选项及说明
- struts2 convention配置中常见配置选项及说明
- struts2中Convention plug-in中的那些事情
- 简述STRUTS2 Convention零配置
- 简述Struts2 Convention零配置
- 简述Struts2 Convention零配置
- 简述Struts2 Convention零配置
- struts2自定义类型转换(2)基于StrutsTypeConverter
- Ubuntu下使用mysql
- 14.1.3 基于任务的并行度(task-based parallelism)
- SSL原理
- 装饰Jbutton
- struts2中Convention中的basePackage与locators配置种种
- .NET 线程学习笔记二
- 在Eclipse中查看Android源码
- Troj/TsuCom-Fam
- IPhone 开发经验教训总结 -- 仅供参考
- SDCard存储和File存储 的总结
- Struts2 Preparable与ModelDriven
- 虚拟机装苹果系统全过程
- shell下取得字符串的md5值