zoukankan      html  css  js  c++  java
  • Intellij IEDA 14.0+Tomcat Servlet开发

          作为我的第一篇博客,用来纪念我调了好几天的Idea下的servlet开发。刚从Eclipse转到Idea,很是不方便,各种问题,网上资料也不多,先是看了一段“IntelliJ IDEA教程集合-YouMeek.com整理”视频,感觉似懂非懂,然后着手编写程序,按照网上大部分的教程(可参考http://www.cnblogs.com/shihui142857/p/3827062.html)pia pia pia 地敲起代码,发现总是不成功,最后磨了好几天才知道很多细节问题,下面分享一下。

         (建工程等步骤我就不再提了,按照上面网页链接做就OK)

         Q1:出现Tomcat 1099 8080端口被占用,网上有很多解决方案,比如先查占用的端口号 netstat -aon | find "8080",然后通知命令tasklist找出进程名字,再在任务管理器中kill。如果确定不是其他程序占用,是之前开的Tomcat没有正常关闭,其实有个最简单的办法,就是找到任务管理器中的java进程,直接kill。

         Q2:在配置Tomcat容器的时候要记得在Deployment中添加Deploy at the server startup,通知可以设置访问的相对路径如下图所示

        Q3:idea创建servlet问题,idea创建servlet会自动添加注解 @WebServlet(name = "TestServlet"),之前没解决问题的时候,在QQ群里有人说这个不能自动添加,说这个有问题,但事实就是自动添加了,但貌似也没啥问题。但是关键问题在于idea创建servlet后,doPost函数和doGet函数的位置是相反的,也就是说Eclipse创建serlvet的时候是先doGet,再doPost函数,而idea则是相反的。由于习惯性行为,我把输出代码写在了第一个函数doPost里,导致调了一天都没调出来,找各种问题,太粗心了。

        今天终于把servlet正常显示了,心情一下子舒坦,也许是前几天天天和女友吵架导致人品急剧下降,so easy的代码都挑不出$_$。今天哄了哄女友,就调出来了(happy)。下面还是贴一下我的代码,参考价值不大,给自己留个备份,第一份博客^_^

    TestServlet.java文件

    package mypackage;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    @WebServlet(name = "TestServlet")
    public class TestServlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            PrintWriter out=response.getWriter();
            out.println("<html>");
            out.println("<head><title>servlet test</title></head>");
            out.println("<body>hello TestServlet</body>");
            out.println("</html>");
        }
    }

    web.xml文件

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
        <servlet>
            <servlet-name>TestServlet</servlet-name>
            <servlet-class>mypackage.TestServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>TestServlet</servlet-name>
            <url-pattern>/TestServlet</url-pattern>
        </servlet-mapping>
    </web-app>

      

  • 相关阅读:
    【西北师大-18软工】第三次作业成绩汇总
    【西北师大-18软工】第一次作业成绩汇总
    2017面向对象程序设计(Java)总结
    面向对象分析与设计中类的设计
    2017面向对象程序设计(Java)第十四周学习总结
    2017面向对象程序设计(Java)第十周学习总结
    2017面向对象程序设计(Java)第九周学习总结
    关于在eclipse中使用LocalDate类的问题
    JAVA程序导入eclipse的简易教程
    2017面向对象程序设计(Java)学习总结
  • 原文地址:https://www.cnblogs.com/JeromeHuang/p/4188092.html
Copyright © 2011-2022 走看看