This commit is contained in:
xiangwb
2018-05-07 13:54:31 +08:00
parent 1e3481b683
commit 334c190dba
2 changed files with 7 additions and 5 deletions
@@ -2,7 +2,7 @@ package com.xwbing.configuration;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;
import com.xwbing.handler.FormSaveFilter;
import com.xwbing.handler.FormRepeatFilter;
import com.xwbing.util.captcha.CaptchaServlet;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -57,7 +57,8 @@ public class ServletFilterConfig {
@Bean
public FilterRegistrationBean formSaveFilter() {
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new FormSaveFilter());
logger.info("注册表单重复提交过滤器formSaveFilter ======================= ");
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new FormRepeatFilter());
filterRegistrationBean.addUrlPatterns("/*");
filterRegistrationBean.addInitParameter("excludePath", "/doc,/captcha,/v2/api-docs,/swagger-resources,/configuration/ui,/configuration/security,/druid");
filterRegistrationBean.addInitParameter("excludeType", ".js,.css,.gif,.jpg,.png,.ico,.jsp,.html,/druid/");
@@ -14,9 +14,9 @@ import java.io.OutputStream;
* 项目名称: boot-module-demo
* 创建时间: 2018/5/7 10:11
* 作者: xiangwb
* 说明:
* 说明: 防止表单重复提交,新增数据时用
*/
public class FormSaveFilter implements Filter {
public class FormRepeatFilter implements Filter {
private String[] paths;
private String[] types;
@@ -32,6 +32,7 @@ public class FormSaveFilter implements Filter {
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
HttpServletResponse response = (HttpServletResponse) servletResponse;
request.setCharacterEncoding("utf-8");
String path = request.getServletPath();
for (String p : paths) {
if (path.equals(p)) {
@@ -53,7 +54,7 @@ public class FormSaveFilter implements Filter {
session.removeAttribute("sign");
chain.doFilter(request, response);
} else {
getOutputStream(response,"请不要重复提交");
getOutputStream(response, "请不要重复提交");
}
} else {