前面已经学习了struts2的基本用法,接下来再说说struts2的三种访问方式。
第一种方式:指定method属性
第二种方式:动态方法调用(感叹号方式,需要打开对应开关),官网不推荐使用
第三种方式:通配符方式,官网推荐使用
不废话,上代码!!!
1. 指定method属性方式
1.1)修改Action类,在内部加CURD的方法
public class Hello extends ActionSupport { // 添加 public String add() { System.out.println("调用了添加的方法!"); return "add"; } // 删除 public String delete() { System.out.println("调用了删除的方法!"); return "delete"; } // 更新 public String update() { System.out.println("调用了更新的方法!"); return "update"; } // 查询 public String select() { System.out.println("调用了查询的方法!"); return "select"; } }
1.2)修改struts.xml文件(配置对应的Action)
<package name="default" namespace="/" extends="struts-default"> <action name="singerAdd" class="com.pxy.action.Hello" method="add"> <result name="add">/WEB-INF/jsp/singer_add.jsp</result> </action> <action name="singerDelete" class="com.pxy.action.Hello" method="delete"> <result name="delete">/WEB-INF/jsp/singer_delete.jsp</result> </action> <action name="singerUpdate" class="com.pxy.action.Hello" method="update"> <result name="update">/WEB-INF/jsp/singer_update.jsp</result> </action> <action name="singerSelect" class="com.pxy.action.Hello" method="select"> <result name="select">/WEB-INF/jsp/singer_select.jsp</result> </action> </package>
1.3)添加对应的JSP页面,我把对应的JSP页面放到了/WEB-INF/jsp/目录下。
1.4)接下来可以通过以下地址进行访问。
http://localhost:8080/strDemo/singerAdd.action
http://localhost:8080/strDemo/singerDelete.action
http://localhost:8080/strDemo/singerUpdate.action
http://localhost:8080/strDemo/singerSelect.action
1.5)到这儿就结束了,如果你的程序不能跳转到对应的JSP页面,请把项目删后再来一遍吧,如果操作了10遍还不行,那可以直接放弃了。
2. 动态方法方式
2.1)修改struts.xml文件,在其中设置开启动态方法的常量(建议写在package标记上面)
<!-- 开启动态方法调用 --> <constant name="struts.enable.DynamicMethodInvocation" value="true" />
2.2)修改struts.xml文件(配置对应的Action)
<!-- 动态方法调用 --> <action name="singermng" class="com.pxy.action.Hello"> <result name="add">/WEB-INF/jsp/singer_add.jsp</result> <result name="delete">/WEB-INF/jsp/singer_delete.jsp</result> <result name="update">/WEB-INF/jsp/singer_update.jsp</result> <result name="select">/WEB-INF/jsp/singer_select.jsp</result> </action>
2.3)通过以下地址进行访问(注意标红的部分是Action类中的方法名)
2.3)通过以下地址进行访问(注意标红的部分是Action类中的方法名)
http://localhost:8080/strDemo/singermng!add.action
http://localhost:8080/strDemo/singermng!delete.act...
http://localhost:8080/strDemo/singermng!update.act...
http://localhost:8080/strDemo/singermng!select.act...
3. 通配符方式
3.1)修改struts.xml文件(配置对应的Action,其中*就是通配符,可以设置多个,后面使用{1}{2}按从左到右的顺序匹配)
<!-- 通配符方式调用 --> <action name="smng_*" class="com.pxy.action.Hello" method="{1}"> <result name="{1}">/WEB-INF/jsp/singer_{1}.jsp</result> </action>
3.2)通过以下地址进行访问
http://localhost:8080/strDemo/smng_add.action
http://localhost:8080/strDemo/smng_delete.action
http://localhost:8080/strDemo/smng_update.action
http://localhost:8080/strDemo/smng_select.action
到这儿三种基本访问方式就OK了。
本文出自 “软件思维” 博客,请务必保留此出处http://softi.blog.51cto.com/13093971/1951401