大多数情况下web开发的地址是 /开头的绝对路径,代表web应用或网站,但容易写死,于是我们用${pageContext.request.contextPath} 可以出现并且只能出现在jsp的任何“”位置里或标签内,代表web’应用目录=”/test”
web开发中以/开头的都是绝对路径,http://127.0.0.1/jsp/HelloWorldServlet 也是绝对路径,都一样的作用
但有时候,我们只能使用相对路径,比如在css里,1我们不想写死,万一应用名改了就不好了,2没法用${pageContext.request.contextPath}。只能用相随路径,会更好!!!
如:我们的login.jsp页面在webRoot/WEB-INF/jsp中,而css文件在webRoot/css下,图片也在webRoot/imags下
css文件会引用到图片文件:../代表上一层目录 webRoot/,= 之前css文件在css目录下,../后退到上层目录webRoot/,
“../imags/1.jpg”就可以了!!!!
相对地址:一般是浏览器的url:localhost;8080/test/servlet/login UIServlet
先去请求login.jsp页面,再去请求css文件,是以浏览器当前的 url的地址为依据进行相对地址。不是myeclipse磁盘文件的地址,!!是浏览器url的地址!!因为是浏览器去获取文件资源!!要以浏览器的身份角色去想!!所以看到css里面的“../imags/1.jpg” 会先变成localhost;8080/test/images/1.jpg 就可以拿到!!但如果是其他url地址可能就拿不到,还要修改!!!
以后再写相对路径,一定要参考当前的地址栏写,该访问css或html时的url地址是什么!!??
|