我建了一个项目web项目day18_listener_filter,下面有目录/html/registerImprove.html
在Servlet和JSP中如果写“/”则代表当前应用的目录下即day18_listener_filter。---HTML中代表的路径就是localhost后面的路径,
如果不写“/”则代表相对路径。----当前页面的路径(如果你目前的在day18_listener_filter/html/registerImprove.html),也就是day18_listener_filter/html/registerImprove.html
jsp中的对象${pageContext.request.contextPath }代表当前项目的路径,也就是day18_listener_filter/后面的路径
HTML中的路径问题:/day18_listener_filter/html/registerImprove.html在此页面中提交到day18_listener_filter/下的registerImprove进行登录验证,可以使用<form
action="/day18_listener_filter/registerImprove" method="get">绝对路径,但是这个不通用,当你把这个页面复制到另外一个项目,就的重新改项目名,所以用相对路径是最好的。
<form action="../registerImprove" method="get">为什么要加两个..因为registerImprove所在项目的在html的路径的上一个目录,
如果是同级目录<form action="registerImprove" method="get"> 。
如果是html上两级目录呢<form action="../../registerImprove" method="get">.
如果是html/aaa/registerImprove,则这样写<form action="aaa/registerImprove" method="get">
为什么不用/day18_listener_filter/。。这样的绝对路径,上面提到过:当你把这个页面复制到另外一个项目,就的重新改项目名,所以用相对路径是最好的。
更不能写http://localhost:8080/day18_listener_filter/....写死,这样写,你的主机名一改,就会改一大片。
仅是自己的一点心得,如有不当之处,还望指出