Spring MVC - 什么是url路径信息?

时间:2012-12-17 20:29:38

标签: java spring spring-mvc

我想知道什么是网址路径信息?

例如在

  

的http:// MYSERVER:8080 / servletname / handlermethod

是整个路径,包括服务器名称:

  

的http:// MYSERVER:8080 / servletname / handlermethod

还是只是

/ servletname / handlermethod

2 个答案:

答案 0 :(得分:5)

根据文件

getPathInfo()

  

返回与客户端的URL关联的任何额外路径信息   在提出此请求时发送。额外的路径信息遵循   servlet路径,但在查询字符串之前,将以“/”开头   字符。

因此,在您的示例中,它将返回/handlermethod

如果您想/servletname/handlermethod,请使用getRequestURI()

getRequestURL()将返回客户端生成的完整URL(字符串参数除外)。

答案 1 :(得分:1)

Spring MVC中的路径信息可能意味着通过URL发送的信息。在Spring MVC Controller中,您可以轻松设置一个请求映射,其中包含一个变量值占位符,该映射器绑定到方法签名中带有@PathVariable注释的参数 - 与请求映射相关。对于eaxmple:

  @RequestMapping(value = "/user/{userId}")  
public ModelAndView getUserByPathVariable(@PathVariable Long userId, HttpServletRequest request,  HttpServletResponse response) { 
        System.out.println("Got request param: " + userId);

您可以在此处查看更详细的示例:Spring MVC Controller Example