没有重写接口方法,IDEA没有报错。
2024-08-24 05:50:18
今天在IDEA写拦截器的时候遇到点困惑,继承了HandlerInterceptor没有报错,我一直认为他会提醒,要重写方法。如下图
通过查资料,嗯,终于找到原因来,先来上HandlerInterceptor
接口的源码
public interface HandlerInterceptor {
default boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
return true;
}
default void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
@Nullable ModelAndView modelAndView) throws Exception {
}
default void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
@Nullable Exception ex) throws Exception {
}
}
敲一敲黑板,重点来了
以上是HandlerInterceptor 接口的源码,可以看到高版本的spring-webmvc jar包中,HandlerInterceptor 接口定义的是默认方法,这是jdk1.8的新特性,也就是说接口中的方法你重写也可以,不重写也不会报错。
所以所这里并不会提醒你重写,你要自己去手动写。
最新文章
- 【hihocoder#1413】Rikka with String 后缀自动机 + 差分
- 例子:RSS Reader Sample
- ubuntu搭建pyqt5开发环境
- tonado框架的列表嵌套 (template中for循环嵌套)
- jquery基本方法
- hibernate的dao中参数的传递取值
- localStorage
- make subversion时出现neon报错 及 svn其他问题汇总(3ge )
- 使用Ambari部署hadoop集群
- js深入研究之初始化验证
- AtCoder Regular Contest 077
- 执行Python程序的两种方式
- docker-compose部署ELK
- 记录一个EF连接查询的异常:the entity or complex type 'x' cannot be constructed in a linq to entities query
- Centos 7 图形安装笔记(超详细)
- mac &; ip
- C++成员函数在内存中的存储方式
- (转)CLR20R3 程序终止的几种解决方案
- 10.Date对象
- wifidog 源码初分析(1)-转