Struts2的处理结果(三)——动态配置结果
Struts2的处理结果(三)
——动态配置结果
1.使用表达式语法
示例:
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true" />
<package name="package_a" extends="struts-default">
<!-- 此action匹配所有为test_*.action模式的请求 -->
<action name="test_*" class="testAction.TestAction" method="{1}">
<result name="error">error.jsp</result>
<result>{1}.jsp</result>
</action>
</package>
</struts>
现有test_success.action请求,符合test_*的格式,匹配的方法为success()方法,其逻辑视图映射的物理视图资源为success.jsp。
2.由Action的属性值确定物理视图资源
通过使用${属性名.属性名....}的方式确定物理视图资源。
示例:
(1)写一个Action类,其中包含一条属性name:
package testAction;
import com.opensymphony.xwork2.ActionSupport;
public class Test1Action extends ActionSupport{
//封装的请求参数
private String name;
//setter、getter方法
public void setName(String name){
this.name = name;
}
public String getName(){
return this.name;
}
//处理请求的逻辑方法
public String execute()throws Exception{
if(name.equals("jiagoushi")){
return SUCCESS;
}else{
return ERROR;
}
}
}
(2)提交Action的页面welcome.jsp
<form action="test1" method="post">
<input type="text" name="name">
<input type="submit" value="提交">
</form>
(3)物理视图资源jiagoushi.jsp
(4)配置struts.xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true" />
<package name="package_a" extends="struts-default">
<action name="test1" class="testAction.Test1Action">
<result name="error">error.jsp</result>
<result>${name}.jsp</result>
</action>
</package>
</struts>
通过了Action的属性name找到了对应的物理视图资源。
Struts2的处理结果(三)——动态配置结果的更多相关文章
- struts2拦截器interceptor的三种配置方法
1.struts2拦截器interceptor的三种配置方法 方法1. 普通配置法 <struts> <package name="struts2" extend ...
- Quartz 在 Spring 中如何动态配置时间--转
原文地址:http://www.iteye.com/topic/399980 在项目中有一个需求,需要灵活配置调度任务时间,并能自由启动或停止调度. 有关调度的实现我就第一就想到了Quartz这个开源 ...
- spring 3.2.x + struts2 + mybatis 3.x + logback 整合配置
与前面的一篇mybatis 3.2.7 与 spring mvc 3.x.logback整合 相比,只是web层的MVC前端框架,从spring mvc转换成struts 2.x系列,变化并不大 一. ...
- IIS下PHP的三种配置方式比较
在Windows IIS 6.0下配置PHP,通常有CGI.ISAPI和FastCGI三种配置方式,这三种模式都可以在IIS 6.0下成功运行,下面我就讲一下这三种方式配置的区别和性能上的差异. 1. ...
- Quartz动态配置表达的方法
在项目中有一个需求,需要灵活配置调度任务时间,并能自由启动或停止调度.有关调度的实现我就第一就想到了Quartz这个开源调度组件,因为很多项目使用过,Spring结合Quartz静态配置调度任务时间, ...
- IK-Analyzer(5.3.1)动态配置自定义词典
参考文献:http://blog.csdn.net/fatpanda/article/details/37911079 jar包: IK-Analyzer-extra-5.3.1.jar IKAnal ...
- activiti 动态配置 activiti 监听引擎启动和初始化(高级源码篇)
1.1.1. 前言 用户故事:现在有这样一个需求,第一个需求:公司的开发环境,测试环境以及线上环境,我们使用的数据库是不一样的,我们必须能够任意的切换数据库进行测试和发布,对数据库连接字符串我们需要加 ...
- Quartz实现分布式可动态配置的定时任务
关键词: 1. 定时任务 2. 分布式 3. 可动态配置触发时间 一般通过Quartz实现定时任务很简单.如果实现分布式定时任务需要结合分布式框架选择master节点触发也可以实现.但我们有个实际需求 ...
- Spring Security之动态配置资源权限
在Spring Security中实现通过数据库动态配置url资源权限,需要通过配置验证过滤器来实现资源权限的加载.验证.系统启动时,到数据库加载系统资源权限列表,当有请求访问时,通过对比系统资源权限 ...
随机推荐
- (转)SQL对Xml字段的操作
T-Sql操作Xml数据 一.前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型.用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列:此外,还允许带有变量和 ...
- 夺命雷公狗—angularjs—20—$watch监听的用法
- [php]gd图像
<?php /* 处理图像 */ /* {php5} 动态图像的处理更容易. 在 php.ini中就包含了GD扩展包, 去掉 其中的注释即可. extension=php_gd2.dll 其中 ...
- 2.js基础
4.函数 1)函数是一段完成“指定功能”的已经“命名”的代码段 2)函数只有“调用”才能使用到,调用就是通过名称(可以在声明之前,也可以在声明之后) 3)函数名.参数.函数体.返回值(没有返回值的函数 ...
- hadoop之输入输出格式
<STRONG>jobConf.setInputFormat(MyInputFormat. class ); InputFormat:</STRONG> TextInputFo ...
- CSS Reset / Normalize 如何进行样式重置
CSS Reset 过于激进,所有样式全部消除没有必要. 关键是保持各种浏览器的兼容,包括Bootstrap的CSS Reset也是走的这个路线. 线面这个就是后面一种思路的成果: http://ne ...
- JAVA 集合List,数组,Set,Map,直接的相互转换
Java集合转换[List<-->数组.List<-->Set.数组<-->Set.Map-->Set.Map-->List] //List--> ...
- html5 教程网站
html5 MDN Canvas tutorial Canvas教程 canvas: 阮一峰 在那山的那边海的那边有一群程序猿 使用 HTML5 canvas 绘制精美的图形 HTML5定稿了,为什么 ...
- iptables禁止端口和开放端口
1.关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放. 下面是命令实现: iptables -P INPUT DROP iptables -P FORWARD DROP ipta ...
- $IFS和set
$IFS是内部字段分隔符的缩写.它决定Bash解析字符串时将怎样识别字段,或单词分界线.默认为(空格.制表符.换号) 修改$IFS: [xiluhua@vm-xiluhua][~/shell_scri ...