防止表单重复提交(拦截器)一些struts2标签的使用

一、创建一个javabean如下:

import java.io.Serializable;

public class Customer implements Serializable{

    private String name;
    private String password;
    private boolean married;
    private String hobby;
    private String city;
    private String description;
    private String gender;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public boolean isMarried() {
        return married;
    }
    public void setMarried(boolean married) {
        this.married = married;
    }
    public String getHobby() {
        return hobby;
    }
    public void setHobby(String hobby) {
        this.hobby = hobby;
    }
    public String getCity() {
        return city;
    }
    public void setCity(String city) {
        this.city = city;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public String getGender() {
        return gender;
    }
    public void setGender(String gender) {
        this.gender = gender;
    }
    @Override
    public String toString() {
        return "Customer [name=" + name + ", password=" + password
                + ", married=" + married + ", hobby=" + hobby + ", city="
                + city + ", description=" + description + ", gender=" + gender
                + "]";
    }
}

二、jsp编写如下
主要是struts2的标签的使用

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title>struts2中的一些其他标签的使用</title>
    </head>
    <body>
        <s:form action="saveCustomer">  
            <s:token></s:token>
            <s:textfield name="name" label="用户名"/>
            <s:password name="password" label="密码"/>
            <s:checkbox name="married" label="已婚" value="true"/>    
            <s:checkboxlist name="hobby" list="{'吃饭','睡觉','打豆豆' }" label="爱好"/>
            <s:select name="city" list="#{'BJ':'北京','GS':'广上','XM':'厦门'}" 
            headerKey="" headerValue="------请选择-----" label="所在城市" />
            <s:textarea name="description" label="个人介绍" rows="5" cols="30"/>
            <s:radio name="gender" list="#{'male':'男','female':'女' }" label="性别" value="'male'" />
            <s:submit value="提交"></s:submit>
        </s:form>
    </body>
</html>

三、为了防止表单重复提交,struts2使用了token标签组合拦截器使用,标签在上面以及写出< s:proterty value=”token” />
tokenSession,因为指定了拦截器就不会使用默认的拦截器,所有加上默认的拦截器

        <action name="saveCustomer" class="com.zeroyoung.web.action.Demo7Action" method="save">
            <interceptor-ref name="defaultStack" />
            <interceptor-ref name="tokenSession" />
            <result type="redirect">/demo6.jsp</result>
        </action>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值