(23) java web的struts2框架的使用-struts动态调用和通配符

一,动态查找

   1,配置允许动态调用

<!-- 允许动态方法调用 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>

  2,配置action

<!-- 动态方法调用
    		看代码的action配置,没有指定method方法,就是没有指定调用哪个方法。
    		这时候可以在url中这样写
    		http://localhost:8080/useStruts/take/a/user!login?username=xxxxdedd
    		称之为动态方法调用。
    		前提是在xml文件中配置允许动态方法调用的常量。
  -->
<action name="user" class="actions.UserAction" >
  <!-- 
    根据方法返回的是“success”还是“error”异或是其他,返回不同的页面提示。
  -->
  <result name="success">/index.jsp</result>
  <result name="error">/Error.html</result>
</action>

  3,动态调用语法

http://localhost:8080/useStruts/take/a/user!login?username=xxxxdedd

 

二,通配符

<!-- 这里的*标示通配符,method中的{1}标示第一个*代表的(字符串)
    		如果是user_*_*也可以用{2}标示第二个*代表的具体值。
    		
    		有了通配符,你甚至可以这样配置action
    		<action name="user_*" class="actions.UserAction" method="{1}">
    			<result name="{1}">/{1}.jsp</result>{1}
    		</action>
    		这样的化,就可以通过通配符,定义一套的多个接口。牛逼不
    	 -->
    	<action name="user_*" class="actions.UserAction" method="{1}">
    		<!-- 
    			根据方法返回的是“success”还是“error”异或是其他,返回不同的页面提示。
    		 -->
    		<result name="success">/index.jsp</result>
    		<result name="error">/Error.html</result>
    	</action>

  

  

猜你喜欢

转载自www.cnblogs.com/yangzigege/p/9460285.html