1.struts中Action的开发方式

  • 继承ActionSupport类,这种方法实现的Action可以进行数据校验;
  • 实现Action接口;
  • 不继承任何类,不实现任何接口;

  是否继承类或实现接口,struts都会进行默认拦截器的启动,拦截器的启动和Action没有关系。

2.struts中的通配符

  在对action进行配置时,会有重复的情况

<action name="login" class="com.juaner.action.UserAction" method="login">
<result name="login">/login.jsp</result>
</action>
<action name="register" class="com.juaner.action.UserAction" method="register">
<result name="register">/register.jsp</result>
</action>

  此时可以使用*占位符和{}的方式进行统配,从而防止重复配置。

<action name="user_*" class="com.juaner.type.UserAction" method="{1}">
<result name="success">/{1}.jsp</result>
</action>

3.struts中的常量

  • 全局跳转页面

  在action的配置中,可能出现多个action中同一个result返回类型对应同一个跳转页面的情况

<action name="login" class="com.juaner.action.UserAction" method="login">
<result name="success">/success.jsp</result>
</action>
<action name="register" class="com.juaner.action.UserAction" method="register">
<result name="success">/success.jsp</result>
</action>

  此时可以配置全局跳转页面

<global-results>
<result name="success">/success.jsp</result>
</global-results>

  当多个struts配置文件中有多个action配置了相同的name时,按照包含文件的顺序,后面的覆盖前面的。

  • 默认访问后缀

  struts 1中,默认访问后缀为.do,struts 2中默认访问后缀为.action,可以配置默认访问后缀

<constant name="struts.action.extension" value="action,do,"/>

  其中,value的值对应的后缀如下:

action,do --->后缀可以为.action/.do

action,do,--->后缀可以为.action/.do/无后缀

action     --->后缀只能为action

  • 指定默认编码集

  作用于HttpServletRequest的setCharacterEncoding方法 和freemarker 、velocity的输出,默认为UTF-8

<constant name="struts.i18n.encoding" value="UTF-8"/>
  • 设置浏览器是否缓存静态内容

  默认值为true(生产环境下使用),开发阶段最好关闭

<constant name="struts.serve.static.browserCache" value="false"/>
  • 设置系统是否自动重新加载struts配置文件

  当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开

<constant name="struts.configuration.xml.reload" value="true"/>
  • 打印更详细的错误信息

  开发模式下使用,这样可以打印出更详细的错误信息

<constant name="struts.devMode" value="true" />
  • 默认的视图主题

<constant name="struts.ui.theme" value="simple" />
  • 是否支持动态方法调用

 该属性的默认值是true。如果需要关闭动态方法调用,则可设置该属性为 false

<constant name="struts.enable.DynamicMethodInvocation" value="false"/>

  在action配置中不使用通配符,不设置method方法,可以使用!method来进行method方法调用。

  • 上传文件的大小限制

<constant name="struts.multipart.maxSize" value=“10701096"/>

4.action配置中的默认值

  action的class值默认为struts-default包中配置的

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

  method值默认为execute()方法,一个最简单的action可以这样

<action name="test"></action>

  它可以用来跳转到WEB-INF下的资源

<action name="test">
<result name="success">/WEB-INF/index.jsp</result>
</action>

struts中的常量,action配置中的默认值的更多相关文章

  1. 03. struts2中Action配置的各项默认值

    Action中的各项默认值 Action各项配置 <action name="helloworld" class="com.liuyong666.action.He ...

  2. Struts2的Action配置的各项默认值

    1 如果没有为action指定class,默认是ActionSupport 2 如果没有为action指定method,默认执行action中的execute()方法 3 如果没有指定result的n ...

  3. struts2视频学习笔记 03-06(Struts 2配置文件无提示问题,Action配置中的各项默认值,各种转发类型)

    课时3 解决Struts 2配置文件无提示问题(eclipse):window→preference→XML→XML Catlog

  4. spring 配置文件属性设置默认值以及读取环境变量值

    在 Spring 中为 javabean 注入属性文件中的属性值一般人都知道的,可以通过 org.springframework.beans.factory.config.PropertyPlaceh ...

  5. JAVA中的常量定义在class中还是interface中比较合理?

    本文地址:http://blog.csdn.net/sushengmiyan 本文作者:苏生米沿 java中使用的常量可以集中定义在一个文件中. 有两种解决方案: 1.在Constants.java中 ...

  6. odoo配置界面设置字段默认值

    转自国外牛人博客:http://ludwiktrammer.github.io/odoo/custom-settings-odoo.html Defining custom settings in O ...

  7. php给配置数组赋默认值奇

    extract($this->_config['connection'] + array( 'database' => '', 'hostname' => '', 'username ...

  8. struts2中常用constant命令配置

    struts.objectFactory这个属性用 于说明Struts2的 对象池创建工厂,Struts2也有自己的对象池,就像Spring那样,在配置文件中你可以引用对象池中的对象,你可以借助于Sp ...

  9. JS中的常量

    javascript中没有常量,可以通过创建只能取值不能赋值的私有变量来模仿常量. 创建取值器: var Class = function(){ var NUM = 5;   //  在运行时NUM值 ...

随机推荐

  1. TCP及IP报头及协议

    看到有道题目要问:tcp头多少字节?哪些字段?(必问) 这个... 看了这篇文章做参考:http://blog.163.com/tianshuai11@126/blog/static/61894543 ...

  2. composer 安装yii插件 fontawesome

    国外站点 http://fontawesome.io/ 国内站点 http://fontawesome.dashgame.com/ Installation The preferred way to ...

  3. Android开发面试经——4.常见Android进阶笔试题(更新中...)

      Android开发(29)  版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 关注finddreams博客:http:/ ...

  4. 转: 浅谈C/C++中的指针和数组(二)

    转自:http://www.cnblogs.com/dolphin0520/archive/2011/11/09/2242419.html 浅谈C/C++中的指针和数组(二) 前面已经讨论了指针和数组 ...

  5. scp lost connection

    将本机的文件copy到远程时, scp -r /home/Projects/test.rpm root@172.1.1.1:/root; 我们得到了一个错误:lost connection lost ...

  6. dom4j解析xml作为测试数据

    构造函数: public AppTestData(File xmlFile) throws Exception { file = xmlFile; try { saxReader = new SAXR ...

  7. Dorado7检验器失效原因分析

    应用场景: AutoForm1使用包含A.B两个字段的DataType1. A字段不允许为空,并且B字段取值true时A字段需要重新输入,B取其它值时A值不需重新录入. 实现方法:A字段添加了非空检验 ...

  8. rsa加密--选择padding模式需要注意的问题。。。

    最近在做一个项目中需要,在android对一个密码字段首先进行 一次md5加密后再进行一次rsa加密,然后把加密的结果通过 json协议传输给nginx服务器进行解密.在android中,可以直接 使 ...

  9. noip赛前小结3

    嗯,这是第三份小结. 连续三天的小结. 这几天状态逐渐回来了. 前天3道题rk8左右. 昨天上午3道题rk7,但是有一道题考后1minAC了. 昨天晚上2道题AK了. 今天也3道题rk1了. 这个趋势 ...

  10. 字符串(string)转json

    第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + ...