新手HttpServlet路径问题

HttpServlet路径访问问题

很多新手在使用HttpServlet类得时候,可能会出现404和访问不到得问题。

解决办法:

一般可能是路径填对或者是你得实现类没有注解WebServlet,在实现类的上面注解一个WebServlet 然后填上类的资源路径就好了

@WebServlet("/Demo1")
public class HttpServletDemo1 extends HttpServlet {
     
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     
        System.out.println("doGet...");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     
        System.out.println("doPost...");
    }
}

上面代码中 /Demo1 就是资源路径
接下来只要在html页面的form表中的跳转路径填上 这个就好了 如下图

<form action="/Demo1" method="post">
    <input type="text" name="a" >
    <input type="submit" value="提交">
</form>

启动服务器,控制界面就会打印 doPost…

doPost...

这样就解决了,但是很多小伙伴可能会出现,打开了网页,但是控制界面没有打印任何东西。这个问题一般是设置了虚拟路径问题。
点开右上角的服务器,选择Edit Configurations…
新手HttpServlet路径问题_第1张图片
新手HttpServlet路径问题_第2张图片把第3个红色框框的路径 改成 / 然后点右下角ok 就可以了。
如果有的小伙伴非要加自己设定的虚拟路径,那么也可以。
在html页面的form表中的跳转页面 不要输入/ 如下图:

<form action="Demo1" method="post">
    <input type="text" name="a" >
    <input type="submit" value="提交">
</form>

上图的action的内容里只输入了Demo1,去掉了/。重启服务器,就可以成功访问了!

或者也可以直接输入完整的路径,虚拟路径加上资源路径。 比如:如果虚拟路径设置的是/Tomcat ,那么 跳转路径可以设置/Tomcat/Demo1 如下图:

<form action="/Tomcat/Demo1" method="post">
    <input type="text" name="a" >
    <input type="submit" value="提交">
</form>

这样一样可以成功访问

你可能感兴趣的:(开发问题,java)