为了使用convention插件,需要将struts2项目下的struts2-convention-plugin-2.1.6.jar 文件复制到struts2应用的WEB-INF\lib目录下。
对于convention 而言,它会自动搜索位于 action,actions,struts,struts2包下的所有java类,convention插件会把如下2种java类当成Action处理:
(1)所有实现了com.opensymphony.xwork2.Action的java类
(2)所有类名以Action结尾的java类
<constant name="struts.ui.theme" value="simple" />
<constant name="struts.devMode" value="true" />
<constant name="struts.i18n.reload" value="true" />
<constant name="struts.configuration.xml.reload" value="true" />
<constant name="struts.convention.classes.reload" value="true" />
<constant name="struts.i18n.encoding" value="UTF-8" />
<constant name="struts.custom.i18n.resources" value="message" />
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<constant name="struts.action.extension" value="action,do,ajax" />
<constant name="struts.convention.result.path" value="/page/" />
<constant name="struts.convention.action.mapAllMatches" value="true" />
<constant name="struts.convention.action.suffix" value="Action" />
<constant name="struts.convention.action.name.lowercase" value="true" />
<constant name="struts.convention.action.name.separator" value="" />
<constant name="struts.convention.default.parent.package" value="default" />
<constant name="struts.convention.action.disableScanning" value="false" />
<constant name="struts.convention.package.locators" value="action,front,back" />
<constant name="struts.convention.package.locators.disable" value="flase" />
<constant name="struts.convention.package.locators.basePackage" value="" />
<constant name="struts.convention.action.eagerLoading" value="true" />
<constant name="struts.multipart.maxSize" value="1000000000" />
<constant name="struts.serve.static.browserCache" value="false" />
<constant name="struts.serve.static" value="true" />
<constant name="struts.objectFactory.spring.autoWire.alwaysRespect" value="true" />
<constant name="struts.convention.result.path" value="/page/" />
设置convention插件定位视图资源的根路径,默认是/WEB-INF/content
<constant name="struts.convention.action.mapAllMatches" value="true" /> 设置即使没有@Action注解,依然创建Action映射,默认值为false
<constant name="struts.convention.action.suffix" value="Action" />
convention搜索Action类的类名后缀,默认为Action
<constant name="struts.convention.action.name.lowercase" value="true" /> 设置映射Action时,是否将Action的name属性值转为小写字母,默认为true
<constant name="struts.convention.action.name.separator" value="" /> 设置映射Action时,指定Action的name属性时,各单词之间的分隔符,默认为中划线
<constant name="struts.convention.default.parent.package" value="default" />
<constant name="struts.convention.action.disableScanning" value="false" />
<constant name="struts.convention.package.locators" value="action,front,back" />
convention 插件使用改常量指定的包作为搜寻Action的根包,
默认为:action,actions,struts,struts2
<constant name="struts.convention.package.locators.disable" value="flase" />
<constant name="struts.convention.package.locators.basePackage" value="" />
<constant name="struts.convention.action.eagerLoading" value="true" />
struts动态访问,在包action中新建一个TestAction类,方法index,即可进行动态访问。
http://localhost:8080/demo/test!index.do
需要设置<constant name="struts.convention.action.mapAllMatches" value="true" />,否则会出现异常:
There is no Action mapped for namespace [/] and action name [test!index] associated with context path [/lijietest]. - [unknown location]
分享到:
相关推荐
Struts2.1引入了Convention Plugin,以实现框架的零配置目标,替代之前的Codebehind Plugin。这个插件通过约定优于配置的原则简化了Struts2的应用开发,减少了XML配置文件的需求。以下是对Convention Plugin主要特性...
然而,随着版本的更新,Struts2引入了一个名为Convention Plugin的新特性,旨在简化配置过程,实现所谓的“零配置”开发。 **什么是Struts2 Convention Plugin?** Convention Plugin是Struts2的一个插件,它基于...
Struts-Convention通过约定优于配置(Convention over Configuration)的原则,能够自动识别Action类、结果页面(JSP、Freemarker等)以及模型类,从而实现几乎零配置的部署和运行。这种方式极大地提高了开发效率,...
- `struts2-convention-plugin.jar`:自动配置插件。 - `struts2-json-plugin.jar`:JSON支持。 - `struts2-spring-plugin.jar`:与Spring集成的插件。 - `ognl.jar`:Object-Graph Navigation Language,用于...
STRUTS2 Convention 零配置是Struts2框架中的一种高级特性,旨在简化应用程序的配置,让开发者能够更快地构建MVC应用。从Struts2.1版本开始,推荐使用Convention插件替代Codebehind插件,因为它更加自动化,几乎无需...
从struts2.1开始,struts2不再推荐使用Codebehind作为零配置插件,而是改为使用Convention插件来支持零配置,和Codebehind相比,Convention插件更彻底,该插件完全抛弃配置信息,不仅不需要是使用struts.xml文件进行...
- struts2-convention-plugin:自动配置插件,根据类名和方法名生成Action配置。 - struts2-json-plugin:支持JSON格式的响应。 - struts2-dojo-plugin:提供Dojo库支持,用于前端交互。 - struts2-spring-...
- `struts2-convention-plugin.jar`:提供了基于约定优于配置(Convention over Configuration)的特性,使得开发者无需编写大量的XML配置文件,只需遵循一定的命名规则,就可以实现Action类和结果的自动映射。...
### Struts2零配置个人整理文档 #### 一、Convention插件详解 ##### 1. 设置结果页面路径 - **背景介绍**:Struts2框架提供了便捷的方式来处理Web请求,并返回响应视图。为了简化配置过程,Struts2提供了一个名为...
- `struts2-convention-plugin.jar`:约定优于配置的插件,用于自动映射Action和结果页面。 - `struts2-dojo-plugin.jar`:提供了与Dojo JavaScript库的集成,便于创建富客户端应用。 - `struts2-json-plugin.jar...
Struts2 Convention 插件是Struts2框架的一个重要组件,自版本2.1起,它取代了Codebehind Plugin,旨在实现Struts2的零配置目标,简化开发流程。这个插件通过遵循一系列预定义的命名约定,自动地映射Action、结果...
通过使用Convention-Plugin,Struts2框架实现了零配置的目标,极大地简化了Web应用的开发过程。开发人员可以将更多的精力集中在业务逻辑上,而不是繁琐的配置细节上。这对于提高开发效率、减少出错率具有重要意义。...
- `struts2-convention-plugin`: 提供了自动配置功能,使得无需在XML配置文件中显式声明Action,而是通过类名和方法名推断Action和结果。 3. **拦截器包(interceptors)**: - `struts2-interceptor-plugin`: ...
- `struts2-convention-plugin.jar`: 提供了基于约定优于配置的功能,使得开发者无需手动编写大量的XML配置,而是根据文件命名规则自动绑定Action和结果。 3. **拦截器库** - `struts2-dojo-plugin.jar`: 提供了...
2. `struts2-convention-plugin-2.3.15.jar`: 自动配置插件,可以自动根据类名和方法名来匹配Action和结果。 3. `struts2-rest-plugin-2.3.15.jar`: REST插件,提供了处理RESTful请求的能力,如将URL映射到Action和...