Servlet路径的总结

Servlet路径的总结

什么时候以/webappName开头
什么时候以/开头
什么时候不以/开头

/webappName开头

客户端浏览器要处理的URL路径时,要以/webappName开头,此时/前代表的是主机名,如http://localhost:8080

例如页面有一个链接

<a href="/oa/login">登陆</a>

当你在浏览器点击这个超链接时,浏览器就会请求http://localhost:8080/oa/login,所以,在需要浏览器请求的URL时,/前省略了主机名

/开头

后台服务器处理请求URL路径时,以/开头,例如在web.xml文件中配置的servlet

<servlet>
    <servlet-name>login</servlet-name>
    <servlet-class>cn.qkmango.login</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>login</servlet-name>
    <url-pattern>/login</url-pattern>
</servlet-mapping>

此处的<url-pattern>/login</url-pattern>就是以/开头,/前省略了hostName和webappName,即/前的路径是以当前项目(webapp)

后台服务器处理的是一个文件的路径时,以/开头,此时/前是相对于web目录(即网站的根目录),如在web.xml中设置错误页面的路径

web
├─errorPage
│         404.htm
└─WEB-INF
           web.xml

<error-page>
    <error-code>404</error-code>
    <location>/errorPage/404.html</location>
</error-page>

不以/开头

目前只见于在web.xml中设置欢迎页面

<!--Servlet作为欢迎页面-->    
<welcome-file-list>
    <welcome-file>system/welcome</welcome-file>
</welcome-file-list>

<!--html文件作为欢迎页面-->
<welcome-file-list>
    <welcome-file>html/welcome.html</welcome-file>
</welcome-file-list>

总结

  • 客户端浏览器请求的URL时,省略了主机名(http://localhost:8080

  • 后台服务器处理URL时,省略了项目名,以该项目路径为相对路径(http://localhost:8080/taobao

  • 后台服务器处理物理文件时的文件路径,以该项目的根目录(web目录为相对路径)(E:\webapp08\web

当分不清时,可以试着将省略的路径加上,看看拼接起来的路径是否正确

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值