加强理解和记忆
项目路径为:Monkey_shop/manege/admin_user.jsp
直接在jsp中访问的路径为相对于localhost://8888
src和web-content都是根目录
<form action="admin_user.jsp">
</form>
<!-- 此处相当于访问:localhost://8888/admin_usr.jsp--> 因此会访问不到
正确的路径是<form action="/Monkey_shop/manage/admin_user.jsp">
web.xml中的路径是相对于相对于localhost://8888/projectname:
<servlet>
<servlet-name> name </servlet-name>
<servlet-class> com.monkey.servlet.user </servlet-class>
<servlet-name> name </servlet-name>
<url-pattern> DoUserAdd </url-pattern>
</servlet>
<!-- 此处相当于访问localhost://8888/Monkey_shop/DoUserAdd -->
链接的路径为项目根目录:
<a href="manage/admin_user.jsp">
<!-- 此处相当于访问:localhost://8888/Monkey_shop/manage/admin_user.jsp
如果加/,则直接到服务器根目录中,错误了-->
假设css绝对地址:
ProjectName/manege/css/common.css
请求转发后css文件丢失了!
原因:请求转发的地址栏不变,默认地址变成了localhost://8888/projectName
如果css写的是相对地址,如:<link rel="stylesheet" type="text/html" href="css/common.css">
那么经过请求转发后:所请求的地址变成了ProjectName/css/common.css,自然找不到文件
解决办法:css文件写成绝对路径:如上