当在servlet里面直接声明urlParrerns时,‘/’代表在项目地址下。
比如:项目中的LoginServlet.java,
中声明
可以在项目工程目录下,通过user-login访问该资源。
注意:
如果我们直接在地址栏上输入
http://localhost:8080/BlogExplain/user-login
(问的话,必须确保这个servlet文件中有doGet()方法,不然无法访问。)
在webcontent中新建一个login.html并进行跳转。
如果我们用服务器打开这个html文件的话,文件路径是
表单的action设为“user-login”,这是一个要执行动作的相对路径(路径如果不以‘/’开头,则是相对于当前web应用程序的根目录,
如果以‘/’开头,则是相对于web服务器的根目录)
因为不用‘/’开头,提交表单后,打开相对于当前web应用程序的根目录的资源。
但是我们的servlet并没有映射在这个地址,而是:
有两种方法让其正常访问:
1.将servlet中的映射地址改为{“/HTML/user-login”}
2.不在webcontent中创建HTML文件夹,直接把HTML文件放在webcontent目录下