为什么 Spring 允许在私有方法上进行控制器注释的请求映射?

bla*_*ank 4 spring spring-mvc

今天刚刚在 Spring MVC cotnroller 课程中遇到这个问题,

    @RequestMapping(value = { "/foo/*" }, method = { RequestMethod.GET})
    private String doThing(final WebRequest request) {
        ...
        return "jsp";
    }
Run Code Online (Sandbox Code Playgroud)

这使得编写测试变得有点困难,我可能会将其更改为公共,但是允许私有方法上的映射有什么意义呢?

smp*_*p7d 5

Java没有提供基于访问修饰符来限制注解目标的机制。