Beetle Web框架使用指南之--防止表单重复提交

表单重复提交指的是,在输入数据并提交表单后,通过刷新浏览器或者回退页面再次提交表单,表单数据被重复处理的情况。
BJAF Web控制器提供了一个在固定时间段内只允许请求只允许提交一次的机制来防止表单重复提交的情况,在ControllerImp控制器抽象类提供了setAvoidSubmitSeconds(seconds :int) :void方法,参数seconds为秒数。若用户在此规定时间内重复提交的话,则会抛出一个ServletException异常。
例如:限制登录控制器在3秒,在LoginController控制器的构造函数内添加一句:

package com.beetle.WebDemo.presentation;

import java.util.Date;
...
public class LoginController extends ControllerImp {
	public LoginController() {
		this.setAvoidSubmitSeconds(3);
	}
    ....
	

}

 

这样,在3秒内,如果客户端再次提出请求的话,则抛出不允许重复提交的异常信息:

图-1 重复提交异常页面截图

开发人员可以在错误处理页面捕捉此异常,提供更友好的提示信息。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值