在使用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页面了。
本文出自 “Sunny” 博客,请务必保留此出处http://qmkkd.blog.51cto.com/9511687/1832973