SSH-struts1模式匹配

这篇博客介绍,学习struts中的模式匹配。
以对用户的操作讲,包括四种操作:增、删、改、查,开发中,如果每一种操作都对应一个action,那么开发一个项目中,每种逻辑都按这样开发,那么每个逻辑都应四个action类,这样会有很多的action。没有必要,为了简化,每个逻辑的增、删、改、查都写在一个action中。struts1通过模式匹配判断在一个Action中调用相应的方法。

以管理用户实例来演示。主要是strus-config.xml文件的配置,不管用户增、删、改、查的逻辑处理。

1.管理用户类:

package com.bjpowernode.struts;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

/**
 * 管理用户类,实现用户的增、删、改、查
 * @author xj
 *
 */
public class UserAction extends DispatchAction {
    //添加用户
    public ActionForward add(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)throws Exception {
        return mapping.findForward("success");
    }
    //删除用户
    public ActionForward del(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)throws Exception {
        return mapping.findForward("success");
    }
    //修改用于
    public ActionForward update(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)throws Exception {
        return mapping.findForward("success");
    }
}

2.配置文件

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
          "http://struts.apache.org/dtds/struts-config_1_2.dtd">

    <struts-config>
        <action-mappings>
            <action path="/user/*"
                type="com.bjpowernode.struts.UserAction"
                parameter="command"
            >
            <forward name="success"path="/user/{1}_success.jsp"/>
            </action>
        </action-mappings>

    </struts-config>

3.JSP页面调用

 <body>
    <a href="user/add.do?command=add">添加</a><br>
    <a href="user/del.do?command=del">删除</a><br>
    <a href="user/update.do?command=update">修改</a><br>
  </body>

总结:
在配置文件中,<action-mappings><action>标签的路径配置,使用通配符。不论用户请求哪些页面,都会读取此<action>的配置。截取用户请求连接,映射到userAction中,根据parameter的配置,调用相应的方法,完成逻辑处理,进行页面跳转。
在配置文件中,跳转路径存在一个占位符,这个占位符,将是从截取用户访问连接中截取。所以,这里存在一个约定,用户请求的路径中的名称必须与将要跳转到的页面名称一致。

在这个实例中,以添加为例,请求连接为“/user/add.do”,所以,会存在add_success.jsp页面.作为用户添加用户成功后,将要跳转到的页面。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值