jsp学习(十三,如何获取各种路径)

jsp学习(十三,如何获取各种路径),第1张

在很多地方都会用到路径,这节学习如何获取他们

目录
    • 获取项目名称
    • 获取项目里面的资源路径(相对路径)
    • 获取服务器映射路径
    • new File("")
    • 获取网址路径
    • 例子

题外话:

获取项目名称

request.getContextPath()

获取项目里面的资源路径(相对路径)

request.getServletPath()

获取服务器映射路径

this.getServletContext().getRealPath(“Test.java”)
即:在映射路径后添加Test.java,不是查找Test.java的路径

如:

E:\sts4WorkSpace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\pathtest\Test.java

映射路径:
就是服务器在运行这个项目的时候,会把项目之间映射到一个隐藏的地址。
如果我要new File(path)来创建一个文件就可以把文件创建到这里,同时真正的地址也会被 *** 作。

new File(“”)

new File(“”)在java里默认是项目文件的地址,但这servlet中是程序执行的地址,也就是编译器的一些地址(E:\Compiler\sts-4.6.0.RELEASE)

获取网址路径

获取ip

getServerName:localhost

获取端口

getServerPort:8080

获取传输协议

getScheme:http

例子
<%@page import="com.sun.xml.internal.bind.CycleRecoverable.Context"%>
<%@page import="org.eclipse.jdt.internal.compiler.ast.ThisReference"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
	<form action="../test"><input type="submit" value="查询servlet的路径"/></form>
	<%=request.getContextPath()%><br>
	getRealPath("Test.java"):<%=this.getServletContext().getRealPath("Test.java")%><br>
	getRealPath("TestFile.jsp"):<%=this.getServletContext().getRealPath("TestFile.jsp")%>
	getServerName:<%=request.getServerName() %><br>
	getServerPort:<%=request.getServerPort()%><br>
	getScheme:<%=request.getScheme()%><br>
	request.getServletPath():<%=request.getServletPath() %><br>
	request.getContextPath()<%=request.getContextPath() %>
</body>
</html>


这是放在jsp中的程序,如果在servlet中也是一样的,因为servlet会映射到WebContent根目录

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/800429.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存