Struts2 Action中动态方法调用通配符的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts2 Action中动态方法调用通配符的使用相关的知识,希望对你有一定的参考价值。

一、Struts2执行过程图:

技术分享


 二、struts2配置文件的加载顺序

struts-default.xml---struts-plugin.xml---struts.xml

具体步骤:

技术分享

 


 

技术分享


 

技术分享


 

技术分享


 

技术分享


 

技术分享


 

技术分享


 三、Action中动态方法调用<Dynamic Method Invocation> DMI

第一种方式:

自定义DMIAction类,使它继承ActionSupport类,该类无需手动重写execute(),底层有默认实现。因此我们也可以自定义方法list。

struts.xml中的action元素植入method调用前台返回的方法list

技术分享

技术分享

若一个类中有多个方法,在struts.xml中需植入多个action元素,因此该方法的安全性低


 

第二种方式:

 在struts.xml中开启动态方法调用,即可使用一个action,并通过在Action的名称中使用感叹号(!)来标识要调用的方法名称

 

       /*
	 * 添加图书
	 */
	public String add() throws Exception {
		System.out.println("======add====");
		return "add";
	}
	
	
	/*
	 * 删除图书
	 */
	
	public String del() throws Exception {
		System.out.println("======del====");
		return "del";
	}
	
	
	/*
	 * 修改图书
	 */
	public String edit() throws Exception {
		System.out.println("======edit====");
		return "edit";
	}

 

  

 技术分享

执行效果:

技术分享


四、Action中通配符的使用

 通配符用星号(*)表示,用于配置0个或多个字符串,在配置Action时,可以在action元素的name属性中使用星号来匹配任意的字符串

技术分享

技术分享

实现效果:

技术分享

 

以上是关于Struts2 Action中动态方法调用通配符的使用的主要内容,如果未能解决你的问题,请参考以下文章

Struts2.5动态方法调用action和使用通配符访问action

struts2的通配符与动态方法调用

Struts2系列:通配符和动态方法调用

struts2.5动态方法调用和默认Action

struts2的动态方法调用(DMI)和通配符映射

Struts2 动态调用方法