Convention插件

转载 2012年03月28日 18:53:26

下面是我知道的几个Convention插件的几个配置属性:

1.

struts.convention.package.locators.basePackage=com.ZTest.web.action

这个属性用于约定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.

struts.convention.result.path=/WEB-INF/ruiri

这个属性用于约定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.
struts.convention.action.name.lowercase=false

###是否将Action类转换成小写
当一个类的类名是多个单词组合起来的时候,例如 HelloWolrdAction,如果指定了这个属性,则访问的地址必须是:  HelloWorld.action ,如果不是指定这个属性则是:  helloworld.action



4.
struts.convention.action.name.separator=

这个属性是约定当一个Java 类 有多个单词组合成的时候,映射的URL地址的时候访问的格式的分隔符。

如果不指定这个属性,Struts默认的分隔符是 “-”,例如 HelloWorldAction 则访问的URL 是Hello-World.action

如果指定这个属性是上面的格式,则是没有分隔符,会按照Java 类名直接映射,例如 HelloWorldAction 则访问的URL 是HelloWorld.action

5
struts.convention.default.parent.package=default

这个属性指定的是Strtus.xml中配置的 <package>节点的父节点。(有什么用?可能就是用于定义全局的Result 吧,这个本人也没深入的研究过)



6

struts.convention.package.locators=action

确定搜索包的路径。只要是结尾为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 就是相当于下面的解释

  类路径                                    命名空间(struts.xml中配置的<package>节点)
com.ZTest.web.action.AAAAAction             ->    /
com.ZTest.web.action.test.CCCCAction        ->    /test

com.ZTest.web.action.test.first.EEEEAction ->    /test/first

当然对应的资源的文件路径就是:

/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都是一组以逗号分割的字符串。


SSH整合+struts convention插件小示例

  • 2014年10月15日 10:20
  • 1.81MB
  • 下载

struts 2读书笔记-----Convention插件与“约定”支持

Convention插件的主要特点是“约定优于配置”。              Action的搜索和映射约定            为了能够使用Convention插件,必须在Struts 2...
  • chenssy
  • chenssy
  • 2012年02月20日 22:51
  • 4146

Struts2插件convention

  • 2014年09月24日 09:06
  • 300KB
  • 下载

convention插件与"约定"支持

1.约定优于配置

Convention 插件(1)

插件简介 插件使用方法 约定支持 自动加载映射 相关常量

Convention插件与"约定"支持

Action的搜索和映射约定(1)安装Convention插件:将Struts2项目下的struts2-convention-plugin-2.3.31.jar文件复制到Struts2应用的WEB-I...

Struts2的 Convention插件和Annotation使用(二)

struts2_Convention的Annotation 分类: java ee struts java web2013-07-30 13:27 153人阅读 评论(0) 收藏 举报 str...

Struts2-- Convention插件

1.1. 设置结果页面路径 默认所有的结果页面都存储在WEB-INF/content下,你可以通过设置struts.convention.result.path这个属性的值来改变到其他路径。如:...
  • ylchou
  • ylchou
  • 2012年03月28日 18:50
  • 541

Struts2 注解零配置方法(convention插件使用)

最近接触到一个新的项目,是做一个使用S2SH的电子商务商城的二次开发。之前使用过S2SH,在此之前的项目中,Struts2 使用的是XML配置而这个项目是使用注解。在这个项目中,注解还不需要使用Act...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Convention插件
举报原因:
原因补充:

(最多只允许输入30个字)