@Dukebf
2017-07-12T00:04:25.000000Z
字数 758
阅读 930
jsp
jsp中request对象是javax.servlet.http.HttpServletRequest类的实例,可以获取到客户端请求的情况,如:
方法 | 作用 |
---|---|
request.getContxtPath() | 获取当前访问路径 |
request.getScheme() | 获取访问协议 |
request.getServerName() | 获取访问地址 |
request.getServerPort() | 获取端口 |
其他具体的,可以查看其他教程,传送门
Tomcat 上跑多个工程,一般会用工程名进行区分 URL。
比如URL是:http://localhost/工程名 /home/index.jsp
这时需要加上 <%=request.getContextPath() %>
动态获取工程名,如:
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()/static/style.css">
但每次都要重复写<%=request.getContextPath() %>
,那就很累人了。所以,可以在 header.jsp 或者每个文件的开头顶部,加入下面的内容:
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"request.getServerName()+":"request.getServerPort()+path+"/";
%>
<base href="<%=basePath%>" >
在文件中就可以直接用<link rel="stylesheet" type="text/css" href="static/style.css">
。