我想在应用程序启动时在日志中列出所有已注册的请求映射(Spring MVC、log4j)。理想情况下,我想查看每个条目的两件事:URL 和相应的 Controller 方法。
我尝试过什么:我在 corresponding documentation entry 中搜索没有成功。
最佳答案
请查看此博文,了解有关如何在应用程序中记录 Spring MVC 映射的更多信息,source blogpost .
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
@Controller
public class EndpointDocController {
private final RequestMappingHandlerMapping handlerMapping;
@Autowired
public EndpointDocController(RequestMappingHandlerMapping handlerMapping) {
this.handlerMapping = handlerMapping;
}
@RequestMapping(value = "/endpointdoc", method = RequestMethod.GET)
public void show(Model model) {
model.addAttribute("handlerMethods",
this.handlerMapping.getHandlerMethods());
}
}
关于spring-mvc - 启动时在日志中列出已注册的请求映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17551900/