研究java获取url的方法

java中获取url路径类似的有好几个方法。如:

request.getServletPath()
request.getContextPath()
request.getRequestURI()
request.getRequestURL()
request.getPathInfo()
request.getServletContext().getRealPath("/")
用spring boot(用来测试web程序真是太方便了)试了一下,先贴代码吧:
@RequestMapping("/say/{param}/{type}")
	public String say(HttpServletRequest request, @PathVariable("param") String param,
			@PathVariable("type") String type) {
		// 如果url是(http://localhost:8080/hello/say/lifeng/1),需要获取出后两个字符串
		String servletPath = request.getServletPath();
		String contextPath = request.getContextPath();
		String requestURI = request.getRequestURI();
		StringBuffer requestURL = request.getRequestURL();
		String pathInfo = request.getPathInfo();
		String realPath2 = request.getServletContext().getRealPath("/");
		String str = "servletPath是:" + servletPath + "。contextPath是:" + contextPath
				+ "。requestURI是:" + requestURI + "。requestURL是:" + requestURL + "。pathInfo是:"
				+ pathInfo +"。realPath2是:"+realPath2;
		return str;
	}
测试结果:


getServletPath()返回的是请求资源路径。
getContextPath()返回的是应用程序路径。
getRequestURI()返回的是uri路径(相当于ContextPath+ServletPath)。
getRequestURL()返回的是绝对路径。
getServletContext().getRealPath()返回的是应用程序在本地计算机上的的位置。
上面这些方法的路径都不包含参数。
还有一些其他的方法:

//获取请求方法
request.getMethod();        //返回"GET
//获取请求协议
request.getScheme();        //返回"http"
//获取请求域名(IP地址);
request.getServerName();    //返回"localhost"
//获取请求端口号
request.getServerPort();    //返回"8080"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值