Struts2的常量及配置:

1.常量的修改:

如果想要修改/lib/struts2-core-2.3.24.jar!/org/apache/struts2/default.properties中的配置信息,有三种方式。

①直接在struts.xml配置文件中加入一个标签即可。例如:设置字符编码

 
  

②在src中创建一个struts.properties文件,这个文件中存在的都是以键值对的方式写的,例如:

struts.i18n.encoding = UTF-8

不加任何符号

③在web.xml中配置

Struts2的常量及配置:_第1张图片

三个地方都可以同时修改,哪个生效?

Web.xml >struts.properries > struts.xml 

推荐在struts.xml中配置


2.常用的常量:

(1)设置字符编码,解决了乱码问题

struts.i18n.encoding=UTF-8


(2)设置访问路径后缀名

struts.action.ectension设置action的扩展名

<constant name="helloAction"  value="do,,">constant>

现在讲扩展名修改为do,,  即访问路径输入helloAction或者helloAction.do也能访问

(3)struts.devMode =true devMode developerMode的缩写 开发者模式

设置为true后,将变成热部署,即修改了配置文件之后,等过一段时间,直接刷新页面时配置信息就已经修改,不能再重启服务器,并且报错之后会将报错信息提供的更加明确。如果是边改变看,不推荐使用热部署。


其他的常量,有兴趣的可以切去私下研究下。

3.高级配置

即动态方法:

我们在写action的时候,都是要一个action对应类中的一个方法,如果方法太多,要配置很多,比较繁琐,有没有只写一个action就能解决问题,有。

将action的name属性修改为helloAction_* ,将method属性值修改为{1},这样就会将请求后面的内容当成method的值.例如:

请求地址为helloAction_add 那样method的值就是add


4.默认配置

①如果action中的method不写,默认情况下,method = execute

②result中的name如果不写,默认是success

③result中的type如果不写,默认是dispatcher 转发

④如果action的class不写 默认是

<default-class-ref class="com.opensymphony.xwork2.ActionSupport">default-class-ref>

⑤如果访问路径错误,将会执行默认的action

你可能感兴趣的:(Struts2的常量及配置:)