作者:妖精的尾巴的阿鲁哈 | 来源:互联网 | 2023-10-12 11:21
绝对路径:通过绝对路径可以确定唯一资源
以 / 开头的路径
如:http://localhost/loginTest/testServlet
/ ---> http://localhost
loginTest---> 虚拟目录
/testServlet---> 请求的资源
什么时候,请求加虚拟目录,什么时候不加?
判断 规则:判断定义的路径是给谁用的?判断请求将来从哪儿发出
在客户端浏览器页面中使用:需要加虚拟目录(项目的访问路径)
自己理解:客户端页面,请求服务器资源,是客户端页面发起的
常用的: ,
重定向:response.sendredirect("/loginTest/testServlet")
给服务器使用:不需要加虚拟目录 --> 转发路径
eg:一个页面请求了 testServlet,同时testServlet完成操作后,需要转发给testServlet3操作,
无论testServlet与testServlet是否在同一级目录(同一个文件夹)都不用加虚拟目录
request.getRequestDispatcher("/testServlet3").forword(req,resp),如下图
建议: 虚拟目录动态获取:request.getContextPath(),因为在项目中,可能会更换虚拟目录这个时候,
如果不用动态的目录,当你修改了虚拟目录时,你的“心会死的”
重定向: resp.sendRedirect(contextPath + "/testServlet2");