代码拉取完成,页面将自动刷新
1. 读取配置文件信息:
2.全局异常:
3. 过滤器:
@Bean
public FilterRegistrationBean<MyFilter> setUpMyFilter() {
FilterRegistrationBean<MyFilter> filterRegistrationBean = new FilterRegistrationBean<>();
filterRegistrationBean.setOrder(2);
filterRegistrationBean.setFilter(myFilter);
filterRegistrationBean.setUrlPatterns(new ArrayList<>(Arrays.asList("/api/*")));
return filterRegistrationBean;
}
多个过滤器按指定顺序执行的话需要用上面的方法。
这里提下过滤器和拦截器:拦截器是基于Java的反射机制,AOP差不多,过滤器基于函数回调,灵活程度上是拦截器更强大,因为拦截器能除了能做过滤器的事情,还可以在控制器执行前后和视图渲染前后处理逻辑。过滤器主要针对URL地址做编码,过滤没用的参数和安全登录校验。
4.参数校验:
springboot引进来的基础包上已经包含所要用的校验注解,在controller上加注解@Validated,方法上无论传的参数还是对象,都在前面加@Valid,单独参数除了加@Valid,还需要直接加@NotNull之类的校验规则。值得一提的是,因为之前有同事说处理参数校验出错的时候,不用在代码里处理bindResult,其实这种说法并不对,因为不单独处理的话时候会抛出异常MethodArgumentNotValidException,如果使用全局异常处理的话,就可以集中处理这类问题。
除了contoller之外,service这些也可以使用
@Service
@Validated
public class PersonService {
public void validatePerson(@Valid Person person){
// do something
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。