java web 相对路径和绝对路径

Http协议中:"." 当前目录;".."上一级目录;"/"根目录。注意Http协议中用"/"不用"\"。
通过如右图的结构去演示。
客户端不知道服务器端真实的文件结构,所以html中访问servlet的时候不要用磁盘中的真实路径,而是用客户端访问时候的“虚拟的路径”。
form的action路径需要注意的问题   根目录是从域名开始的部分, webapps/项目名/......
如果要使用"/"从根目录开始的话,要使用request.getContextPath()拿到上下文路径。.
而src下的所有资源,项目部署后,都会自动放在/WEB-INF/classes目录下(.java编译成.class文件放在该目录下)。所以应写为"/WEB-INF/classes/demo.txt"

虽然在服务器上html2.html和test2Servlet不在同一个文件夹下,但是在浏览器查看的角度来说是在同一个文件夹下的!

java web 相对路径和绝对路径_第1张图片

java web 相对路径和绝对路径_第2张图片

可以查看web项目在tomcat部署后的结构,对比MyEclipse中的项目结构,可理解为“/”表示当前目录是MyEclipse中项目的WebRoot的根目录(也可理为%tomcat%/webapps/WebPath根目录)。既然是“/”表示为WebRoot的根目录,那么访问这个index.jsp文件的写法应该为“/index.jsp”

你可能感兴趣的:(java,EE)