struts2中struts.xml文件用通配符配置

在使用struts2的时候,能简单快速地连接action和jsp页面。主要是神奇的配置文件:struts.xml 在起作用。

示例:

这是目录结构:

来一份可用的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>
	<package name="default" namespace="/" extends="struts-default">
	       <action name="helloworld" class="com.ouc.action.HelloWorldAction">    
	        <result>/result.jsp</result>
	      </action>
</struts>

启动tomcat之后,在浏览器输入http://localhost:8080/HelloWorld/helloworld.action ,就会跳转到我们所写的result.jsp页面了。

1、最基本的方式是指定method的方式

<struts>
	<package name="default" namespace="/" extends="struts-default">
	       <action name="helloworld" class="com.ouc.action.HelloWorldAction">    
	        <result>/result.jsp</result>
	       </action>
	       <action name="addAction" method="add" class="com.ouc.action.HelloWorldAction">    
	        <result>/add.jsp</result>
	      </action>
	      <action name="updateAction" method="update" class="com.ouc.action.HelloWorldAction">    
	        <result>/update.jsp</result>
	      </action>
	</package>
</struts>

在浏览器输入http://localhost:8080/HelloWorld/addAction.action,找到并执行了HelloWorldAction中的add方法并返回字符串“add”之后,就会跳转到add.jsp页面。同理,改成updateAction.action会跳转到update.jsp页面。

2、跳过感叹号方式!

3、强大的通配符方式

<struts>
	<package name="default" namespace="/" extends="struts-default">
		<action name="*_*" method="{2}" class="com.ouc.action.{1}Action">
			<result name="success">/result.jsp</result>
			<result name="add">/{2}.jsp</result>
			<result name="update">/{2}.jsp</result>
		</action>
	</package>
</struts>

其中,_是分隔符,*是通配符,比如action属性里面的第一个*就和{1}对应,即前面的HelloWorld,第二个*和{2}对应,即add或update。这样就能减少很多工作量了,写出简洁的代码。可以增加*的个数,用{n}对应。

浏览器输入http://localhost:8080/HelloWorld/HelloWorld_add.action,就会跳转到add.jsp页面了。

时间: 2024-11-21 02:30:32

struts2中struts.xml文件用通配符配置的相关文章

关于Struts2中struts.xml文件分层问题

没事折腾struts2,遇到异常,浪费好长时间,于是干脆把所有可能的异常都给跑一遍,来个痛快的. 文件的结构 WEB-INF |------configs |-------struts-common.xml |-------struts.xml |------web.xml 遇到的异常: WARNING: Could not find action or result: /Pro_struts2/common/login!preLogin There is no Action mapped fo

struts2中struts.xml配置文件详解

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

struts2中struts.xml配置文件详解【未整理】

1.    深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1.    包配置: Struts2框架中核心组件就是Action.拦截器等,Struts2框架使用包来管理Action和拦截器等.每个包就是多个Action.多个拦截器.多个拦截器引用的集合. 在struts.xml文件中package元素用于定义包配置,每个package元素定义了一个包配置.它的常用属性有: l name:必填属性,用来指定包的名字. l extends:可选属性,用来指定该包继承

struts2的struts.xml文件的提示功能配置

1.先配置dtd文件 步骤: 1.首先打开MyEclipse的窗口,选择"Window"菜单下的"Preferences"选项 2.再打开的"Preferences"对话框中,选择左边的"XML"选项下的"XML Catalog"选项,然后选择右边的"Add"按钮, 3.选择"File System"按钮,找到dtd文件的位置,(可以解压struts-core-2.5

struts2中struts.xml中的action标签的method属性配置为&quot;{1}&quot;的时候是什么意味

用一个例子来说明 当有如下<action>标签 <action name="user_*" class="com.test.CustomerAction" method="{1}"> <result name="success" >/result.jsp</result> <result name="input">/index.jsp</re

Struts2 学习笔记——struts.xml文件之Bean的配置

Struts2的大部分核心组件不是以硬编码的形式写在代码中,而是通过自身的IoC容器来管理的. Struts2以可配置的形式来管理核心组件,所以开发者可以很容易的扩展框架的核心组件.当开发者需要扩展或者替换Struts2的核心组件时,只需要提供自己的组件实现类,并部署在Struts2的IoC容器中即可. 我们打开struts2-core-2.2.1.1.jar中的struts-default.xml文件,可以看到大量的Bean的定义.如下代码片段: <struts> <!—- 两个对象工

struts.xml文件中action配置、OGNL的投影映射、OGNL表达式的符号

在struts.xml文件中不同的action配置,请求的路径是不一样的 1.请求 path = user!query.action; 配置如下: <action name="user" class="com.bwf.code.action.UserAction"> <result name="queryUser">/query.jsp</result> </action> 2.请求path = u

struts2——配置struts.xml文件

在struts2框架中struts.xml是应当放到src的根目录,程序编译后会将struts.xml放到WEB-INF/classes目录下. Struts2在web.xml中的一般配置如下: Xml代码   <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFil

解决struts2中validation.xml配置无效的问题

解决struts2中validation.xml配置无效的问题,我使用了xml的验证,却始终发现无法生效,后面发现才是xml的头文件的格式问题,修改了一下就好了. 成功的xml <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"> <val