zoukankan      html  css  js  c++  java
  • Servlet和Tomcat部署

      今天有空写个Servlet来玩一下。用EditPlus写一个简单的Servlet,FirstServlet.java,如下:

      

    import java.io.IOException;
    import java.io.PrintWriter;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class FirstServlet extends HttpServlet { 
        public FirstServlet() {
    
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
            out.println("<html><head>");
            out.println("<title>First Servlet</title>");
            out.println("</head><body>");
            out.println("Hello Servlet");
            out.println("</body></html>");
            out.close();
        }
    
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
            out.println("<html><head>");
            out.println("<title>First Servlet</title>");
            out.println("</head><body>");
            out.println("Hello Servlet");
            out.println("</body></html>");
            out.close();
        }
    }

    然后用javac FirstServlet.java编译,会产生一个FirstServlet.class文件。如果编译出现javax.servlet找不到之类的错误的话,首先找到Tomcat---->lib目录下的servlet-api.jar包(当然,前提是你要先安装Tomcat),然后就是将servlet-api.jar包放到JDK -->jre--->lib-->ext目录下面,重新编译,就可以了(因为servlet-api.jar包并非java库的,是属于javaWeb范畴了,所以要从tomcat里面拷出来放在jdk里面,编译的时候才能找到该jar包,这里还要注意一点,记得是放在jdd里面的jre,而不是放在和jdk同级的jre文件夹里面), 把该FirstServlet.class文件复制到Tomcat的安装目录~apache-tomcat-8.0.32webappsROOTWEB-INFclasses下面,如果你自己那里没有classes文件夹,则自己手工建一个即可.

    然后跟着把servlet在web.xml文件里面注册,添加节点如下(要包在根节点<web-app>里面):

      <servlet>
        <servlet-name>FirstServlet</servlet-name>
        <servlet-class>FirstServlet</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>FirstServlet</servlet-name>
        <url-pattern>/servlet/FirstServlet</url-pattern>
      </servlet-mapping>
      <servlet>

      <servlet>节点是指定包含的Servlet类,<servlet-mapping>节点是指定servlet映射的Url。

      配置好了,然后是启动Tomcat,启动过程中还遇到了点小插曲(详看 启动Tomcat出现Using CATALINA_BASE ),启动tomcat成功之后,最后当然就是在浏览器里面输入http://localhost:8080/servlet/FirstServlet,便会在页面上看到:

    Hello Servlet

     大功告成。
     最后说下servlet,其实就是运行在服务器的java程序,是专门用来接收web请求以及相应web请求的,其不能单独运行,要运行在servlet容器里面,比如tomcat,weblogic等。servlet容器接收到web请求之后,会把请求封装成httpRequest,并且生成httpResponse响应,然后把他们通过参数的方式传递给servlet(doPost, doGet, service),经过处理之后,通过response的方法,再通过servlet容器来把response响应返回给客户端。

  • 相关阅读:
    AOS编排语言系列教程(五):创建安全组SecurityGroup
    AOS编排语言系列教程(四):创建弹性云服务器ECS
    GO语言实现 自动登陆华为云并获取cookies 详解(兼介绍SSO单点登陆)
    人脸匹配搜索指北
    人脸识别使用base64的方式添加人脸
    AOS编排语言系列教程(三):创建子网Subnet
    AOS编排语言系列教程(二):初识AOS编排语言,创建你的第一个AOS模板
    华为云社区·CSDN【寻找黑马程序员】有奖征文活动,邀你挥洒才情
    AOS编排语言系列教程(一):开启AOS之旅,解锁各种自动化姿势
    00063_String类
  • 原文地址:https://www.cnblogs.com/ismallboy/p/5387723.html
Copyright © 2011-2022 走看看