说明: Java应用程序中的配置文件经历三个阶段:
1) properties文件:对于一简单的键值对的属性配置很方便。
2) xml文件:适用于配置信息具有层级的情况。
3) 基于注解的配置: 直接把配置参数放置在类、属性、方法、参数之上。可以少写一个配置文件。
1. 使用convention-plugin插件可以实现Action的零配置:约定大于配置
1) 在classpath下添加struts-convention-plugin-x.x.x.jar
2) 零配置不代表没有配置,在convention-plugin插件配置串它已经内置好了一些约定。
2. convention-plugin中的约定
1) 默认所有的配置都是继承自struts-default这个父包
2) 默认所有的结果页面都存储在WEB-INF/content下
3) 默认包路径包含action,actions,struts,struts2的所有包都会被struts作为含有Action类的路径来搜索(struts.convention.package.locators属性)
4) 默认寻找com.opensymphony.xwork2.Action的实现类或以"Action"结尾的类作为请求处理器
5) 从定义的struts.convention.package.locators标示开始到包结束的部分,就是默认的命名空间
6) 默认的请求资源URL:去掉类名的Action部分。然后将每个分部的首字母转为小写,用’-’分割。(struts.convention.action.name.separator)
7) 默认的请求处理方法是:execute()方法或者使用动态方法(需要是Action接口的实现类)调用
3. 使用注解可以更改convention-plugin中的默认约定,常用的注解有:
1) @Namespace:指定命名空间。(包和类级别) 默认为""
2) @ParentPackage:指定父包。 (包和类级别) 默认就是继承自struts-default
3) @Result:提供了Action结果的映射。(类级别) 包内全局Result配置
4) @Results:全局“Result”注解列表。(类级别)
5) @Action:指定Action的访问URL和局部Result注解列表(类和方法级别)