sprin项目中请求参数拦截去空串
时间: 2023-05-23 18:06:19 浏览: 93
在Spring项目中,可以使用拦截器对请求参数进行拦截,进而过滤空字符串。你可以实现自定义的拦截器,继承HandlerInterceptorAdapter,并覆写其中的preHandle方法。
例如:
```java
public class EmptyParamInterceptor extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
Enumeration<String> parameterNames = request.getParameterNames();
while (parameterNames.hasMoreElements()) {
String key = parameterNames.nextElement();
String value = request.getParameter(key);
if (StringUtils.isEmpty(value)) {
request.setAttribute("errorMsg", key + "不能为空!");
request.getRequestDispatcher("/error-page").forward(request, response);
return false;
}
}
return true;
}
}
```
在该拦截器中,我们首先获取所有的请求参数名,然后判断其对应的参数值是否为空。如果为空,我们使用request.setAttribute将错误信息添加到request中,再将请求转发到错误页面。如果请求中存在空值,则返回false,表示拦截该请求;否则返回true,表示放行该请求。需要注意的是,在拦截器中对请求进行修改后,需要将该请求转发到正确的处理页面。
阅读全文