SpringMVC支持内部类的跳转吗

如果我想使用注解跳转到一个内部类里面,应该怎么做。

首先通过源码知道,scanner扫描的时候,默认扫描的是base-packag下面的.class文件。

其次scanner扫描的是@Component@Controller@Service@Respository,所以只要是.class文件有上面4个注解,就会被扫描到,而每一个class都会(包括匿名类,内部类等)生成一个.class文件,并且都是在本包下,所以只需要在内部类上面加上4个注解就可以了。

再次,访问路径的生成,scanner扫描到上面4个注解时会继续查找@Autowired@RequestMapping等注解(注意事物的注解不是这里衍生出来的,而是开启事物注解生效的,如@Transactional,它的扫描是全项目,到底是扫描public类和接口还是public类需要根据配置来,JDK动态代理还是cglib动态代理)所以你所以在指定的.class文件中又需要有这些注解。

最后路径的生成,map映射也是以.class文件为准,它的路径为类上面的@RequestMapping+方法上的@RequestMapping。


内部类,通过http://127.0.0.1:8080/项目/ceshi/ceshi就可以访问了,不需要带这个它外部的类路径。

猜你喜欢

转载自blog.csdn.net/xionglangs/article/details/78212483
今日推荐