今天调用HttpServletRequest的getRequestURI方法时对URI和URL这两个概念比较迷惑,在网上查一大段文字懒得看,貌似现在有些懂点了,留个心得~
下面的话是看其他博友的回答,浅显易懂:
getRequestURI()就相当于你在写一个JSP页面的时候会有这样的东西"action='/WebRoot/xxx'"这个方法就是获得'/WebRoot/xxx',也就是说它会得到一个相对地址
而getRequestURL()会得到一个完整的URL地址,也就是绝对的绝对地址
简单地说URI就是一个相对路径不带协议等其他的附加东西,而URL是一个绝对路径
下面是一个更深入的解释:
request.getRequestURL返回的是请求的全部,包括Http协议,端口号,servlet名字和映射路径,但它不包含请求参数。
request.getRequestURI得到的是request URL的部分值,并且web容器没有decode过的
URI是URL的部分值