文档章节

struts2动态方法调用

 南桥北木
发布于 2017/02/13 20:32
字数 211
阅读 2
收藏 0

Struts2的动态方法调用

1 指定方法

Struts.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">

<struts> <package name="default" namespace="/" extends="struts-default">

   <action name="helloword" class="hello.com.HelloWord" method="execute">

     <result>/hello.jsp</result>

   </action>

   <action name="addaction" class="hello.com.HelloWord" method="add">

     <result>/add.jsp</result>

   </action>

   <action name="updateaction" class="hello.com.HelloWord" method="update">

     <result>/update.jsp</result>

   </action>

</package>

</struts>

2.HelloWord.java

package hello.com;

import com.opensymphony.xwork2.ActionSupport;

public class HelloWord extends ActionSupport {

public String execute() throws Exception {

	System.out.println("zheixing");

	return SUCCESS;
}

public String add(){

	return SUCCESS;
	
}

public String update(){

	return SUCCESS;
}

}

2 !方式

Struts.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">

<struts> <package name="default" namespace="/" extends="struts-default">

   <action name="helloword" class="hello.com.HelloWord">

     <result>/hello.jsp</result>

     <result name="add">/add.jsp</result>

     <result name="update">/update.jsp</result>

     </action>

</package>

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

</struts>

2 HelloWord.java

package hello.com;

import com.opensymphony.xwork2.ActionSupport;

public class HelloWord extends ActionSupport { public String execute() throws Exception {

	System.out.println("zheixing");

	return SUCCESS;

}

public String add(){

	return "add";
	
}

public String update(){

	return "update";
}

}

3 struts2通配符调用方法

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">

<struts>

<package name="default" namespace="/" extends="struts-default">

   <action name="helloword_*" class="hello.com.HelloWord" method="{1}">

     <result>/hello.jsp</result>

     <result name="add">/{1}.jsp</result>

     <result name="update">/{1}.jsp</result>

     </action>

</package>

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

</struts>

在url输入:helloword_update.action即可

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 175
码字总数 30122
作品 0
武汉
struts2基于动态代理的Interceptor

struts2核心功能都是基于struts2拦截器的,而拦截器又是基于java的动态代理。 要实现struts2拦截器,需在struts.xml中配置拦截器,每个action可以指定拦截器,指定了拦截器之后默认的拦截器链...

cjun1990
2015/10/23
1K
0
Apache Struts 2 远程命令执行漏洞,你受到影响了?

Apache Struts 2 漏洞又来了...看看你所在的企业是否受到影响? 乌云导读 Apache Struts2 服务在开启动态方法调用的情况下可以远程执行任意命令,漏洞利用代码已经开始流传。 今日Apache St...

oschina
2016/04/26
13.3K
21
struts2 spring hibernate 原理

近期换了家公司,这家公司用的是最传统的SSH。刚开始工作的时候没注意三大框架的一些原理,今天自己谈谈看, 1、struts2 struts2是基于filter的,但同样也需要servlet的支持。一个请求被过滤...

tiger1986
2013/10/20
0
0
Java程序员从笨鸟到菜鸟之(四十六)细谈struts2(八)拦截器的实现原理及源码剖析

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188 拦截器(interceptor)是Struts2最强大的特性之一,也可以说是struts2的核心,拦截器可以让你在Action和res...

长平狐
2012/11/12
44
0
struts2的DMI调用方式

Action执行的时候并不是一定要执行execute方法 可以在配饰魏积安中配置Action的时候用method=来制定执行那个方法, 也可以在url地址中动态指定(动态方法调用MDI) 要说明的是:       前...

mrliuze
2015/04/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSX | SafariBookmarksSyncAgent意外退出解决方法

1. 启动系统, 按住⌘-R不松手2. 在实用工具(Utilities)下打开终端,输入csrutil disable, 然后回车; 你就看到提示系统完整性保护(SIP: System Integrity Protection)已禁用3. 输入reboot回车...

云迹
今天
3
0
面向对象类之间的关系

面向对象类之间的关系:is-a、has-a、use-a is-a关系也叫继承或泛化,比如大雁和鸟类之间的关系就是继承。 has-a关系称为关联关系,例如企鹅在气候寒冷的地方生活,“企鹅”和“气候”就是关...

gackey
今天
4
0
读书(附电子书)|小狗钱钱之白色的拉布拉多

关注公众号,在公众号中回复“小狗钱钱”可免费获得电子书。 一、背景 之前写了一篇文章 《小狗钱钱》 理财小白应该读的一本书,那时候我才看那本书,现在看了一大半了,发现这本书确实不错,...

tiankonguse
今天
4
0
Permissions 0777 for ‘***’ are too open

异常显示: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ......

李玉长
今天
5
0
区块链10年了,还未落地,它失败了吗?

导读 几乎每个人,甚至是对通证持怀疑态度的人,都对区块链的技术有积极的看法,因为它有可能改变世界。然而,区块链技术问世已经10年了,我们仍然没有真正的用上区块链技术。 几乎每个人,甚...

问题终结者
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部