@RequestMapping放在接口上,为何springmvc能映射到其实现上?
springboot下
定义一个接口
public interface HelloController {
@RequestMapping("/hello")
String hello();
}
然后实现
@RestController
public class HelloControllerImpl implements HelloController {
@Override
public String hello(){
return "hello";
}
}
@RequestMapping这个应该不是被HelloControllerImpl里的方法继承了啊,其是怎样起作用的?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这个是jdk的动态代理。
spring在初始化的时候将HelloControllerImpl做成bean。然后并且HelloController作为id号。
每次调用HelloController的hello方法。都会通过jdk的动态代理调用HelloControllerImpl的hello方法