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. Callable与Future、FutureTask的学习 & ExecutorServer 与 CompletionService 学习 & Java异常处理-重要

    Callable是Java里面与Runnable经常放在一起说的接口. Callable是类似于Runnable的接口,实现Callable接口的类和实现Runnable的类都是可被其他线程执行的任务 ...

  2. C 语言预处理

    在嵌入式系统编程中,不管是内核的驱动程序还是应用程序的编写,都涉及到大量的预处理与条件编译,这样做的好处主要体现在代码的移植性强以及代码的修改方便等特性,因此引入了预处理与条件编译的概念.在C语言的程 ...

  3. git123

    一:安装git和配置 1.下载 Git for windows,双击开始安装,一路采取默认选项,一路next,即可安装完毕.为了在你的电脑和github之间建立安全连接,需要SSH keys,所以你需 ...

  4. Java 中使用 UEditor 整理【待续。。。】

    1.简介 官网:http://ueditor.baidu.com/website/index.html 演示:http://ueditor.baidu.com/website/examples/ 2. ...

  5. Android布局_表格布局TableLayout

    一.TableLayout概述 TableLayout表格布局模型以行列的形式管理子控件,每一行为一个TableRow的对象,当然也可以是一个View的对象 二.TableLayout的全局属性  1 ...

  6. MyBatis学习笔记(三) 关联关系

    首先给大家推荐几个网页: http://blog.csdn.net/isea533/article/category/2092001 没事看看 - MyBatis工具:www.mybatis.tk h ...

  7. widnow.open

    http://blog.csdn.net/chenyanggo/article/details/7443051

  8. phalcon: tasks MainTask.php命令行工具

    phalcon: tasks MainTask.php命令行工具 tasks MainTask.php 一般用来做计划任务,处理比较复杂的大型的数据.然后其他功能或程序才能更简单的读取这些复杂的数据. ...

  9. SCCM部署win7操作系统,系统盘为D盘

    SCCM部署win7操作系统,系统盘为D盘 1. 系统部署完毕之后是这样的 2.解决方案 解决分发干净Windows7操作系统盘符为”D”的方法也比较简单. 在SCCM管理控制台中,打开”软件库””操 ...

  10. 线性表 - 从零开始实现by C++

    参考链接:数据结构探险之线性表篇     线性表