jsp 路径问题和环境路径以及各种路径总结
首先确定问题:
浏览器发送请求后,服务器会返回一个响应,但是返回的网页中,会有各种路径问题,所以在此用jsp中的属性来解决.(只是记录问题,用了不专业的术语,请见谅.)
总结:
以路径 http://192.168.1.122:8080/venus/shareHouse/page?id=57&account=68911432 为例子.
request.getContextPath() 结果: /venus 环境路径,包含项目名称
request.getServletPath() 结果: /WEB-INF/views/fenxiangphone.jsp servlet路径
request.getRequestURI() 结果: /venus/WEB-INF/views/fenxiangphone.jsp 获取根路径到地址结尾
request.getRealPath("/") 获取机器中的地址 ,未测试.
常用 ${pageContext.request.contextPath} 来获取根路径.
其他:
1. base 标签解决路径问题:
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <base href="<%=basePath%>">
2.通过jsp内置类解决
<% String path = request.getContextPath();// String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; request.setAttribute("basePath",basePath); %>
${basePath}