java web 应用中的绝对路径问题

应用中使用绝对路径:使用相对路径可能会有问题, 但使用绝对路径肯定没有问题. 

1). 绝对路径: 即相对于当前 WEB 应用的路径.

怎么使用绝对路径呢? 在当前 WEB 应用的所有的路径前都添加 contextPath 即可. 

2). / 什么时候代表站点的根目录, 什么时候代表当前 WEB 应用的根目录呢?

WEB应用的根路径是:http://localhost:8080/app(contexPath)

站点路径是:http://localhost:8080

若 / 需要服务器进行内部解析(即交给servlet处理的), 则代表的就是 WEB 应用的根目录. 

①请求转发中:

request. getRequestDispatcher( "/dir/m.jsp"). forward(request, response);

②web.xml中映射的servrlet路径:

< servlet-mapping >
< servlet-name >ToMPageServlet </ servlet-name >
< url-pattern >/toMPageServlet </ url-pattern >
</ servlet-mapping >
< servlet >

③各种定制标签中的“/”

若是交给浏览器了, 则 / 代表的就是站点的根目录

①jsp中的超链接:

< a href= "/c.jsp" >To C Page </ a >

②表达式中的action:<form action="/login.jsp" / 

③请求重定向中

response. sendRedirect( "/confirm.jsp");

若 / 代表的是 WEB 应用的根目录, 就不需要加上 contextPath 了. 

否则需要加上contextPath。比如:

response. sendRedirect( request. getContextPath() + "/confirm.jsp");

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值