Struts2 用通配符方式动态调用方法

来源:互联网 发布:软件代理加盟协议 编辑:程序博客网 时间:2024/06/01 07:32

1、在 OrdersAction.java 中

public  class  OrdersAction{public  String  add(){try{ActionContext  context = ActionContext.getContext();// 得到当前的动作上下文对象context.put("message","保存订单");return  SUCCESS;}catch(Exception e){return  ERROR;}}public  String delete(){try{ActionContext  context = ActionContext.getContext();// 得到当前的动作上下文对象context.put("message","删除订单");return  SUCCESS;}catch(Exception e){return  ERROR;}}public  String update(){try{ActionContext  context = ActionContext.getContext();// 得到当前的动作上下文对象context.put("message","修改订单");return  SUCCESS;}catch(Exception e){return  ERROR;}}public  String query(){try{ActionContext  context = ActionContext.getContext();// 得到当前的动作上下文对象context.put("message","查询订单");return  SUCCESS;}catch(Exception e){return  ERROR;}}}

2、精简上面的配置,减小 struts.xml 的体积
        <package name="orders" namespace="/orders" extends="mypackage">            <action name="orders_*" class="cn.itcast.action.OrdersAction" method="{1}">                <result type="dispatcher" name="success">/orders/{1}.jsp</result>            </action>        </package>

3、在 success.jsp 中
        <body>            ${message}        </body>

4、结果

        URL输入:localhost:8080/项目名/namespace名/orders_add        会转发到/orders/add.jsp
                localhost:8080/项目名/namespace名/orders_delete        会转发到/orders/delete.jsp
                localhost:8080/项目名/namespace名/orders_update        会转发到/orders/update.jsp
                localhost:8080/项目名/namespace名/orders_query        会转发到/orders/query.jsp

0 0
原创粉丝点击