HttpServletRequest.getContextPath()和ServletContext.getContextPath()

哎哎哎哎啊 发布于 2013/05/28 15:34
阅读 3K+
收藏 0

    看了一下api,没弄懂两者之前的区别是什么,大多数情况下我发现两者得到的结果是一样的,api这样说:

It is possible that a servlet container may match a context by more than one context path. In such cases the HttpServletRequest.getContextPath() will return the actual context path used by the request and it may differ from the path returned by this method. The context path returned by this method should be considered as the prime or preferred context path of the application.
字面上了解了,但是具体有什么不同还是不知道,那么哥可以说下什么情况下两者返回的是不同的呢?

加载中
0
红薯
红薯
第一个方法已经废弃了
0
哎哎哎哎啊
哎哎哎哎啊

引用来自“红薯”的答案

第一个方法已经废弃了

是嘛?怎么没看到api里加@Deprecated 

红薯啊 你还是没解答在什么情况下两者返回的不同

红薯
红薯
我只用后者。就不会有你那么多问题,因为这个问题没意义,浪费时间。知道正确用法就可以了:)
0
王瑞平
王瑞平

前者返回多条路径,后者只返回首选的路径

0
哎哎哎哎啊
哎哎哎哎啊

引用来自“tianhandigeng1498”的答案

引用来自“红薯”的答案

第一个方法已经废弃了

是嘛?怎么没看到api里加@Deprecated 

红薯啊 你还是没解答在什么情况下两者返回的不同

好的
0
哎哎哎哎啊
哎哎哎哎啊

引用来自“王瑞平”的答案

前者返回多条路径,后者只返回首选的路径

前者返回的是真实的请求上下文路径,后者返回的是首选的路径。API中有这个:

It is possible that a servlet container may match a context by more than one context path.

测试了一下,貌似返回的都一样,听红薯的了,知道正确的用法就行了,谢了

返回顶部
顶部