ppp

JavaWeb:基础 servlet 服务搭建

6、Servlet

6.1、Servlet简介

  • Servlet就是sun公司开发动态web的一门技术
  • Sun在这些API中提供一个接口叫做:Servlet,如果你想开发一个Servlet程序,只需要完成两个小步骤。
    • 编写一个类,实现Servlet接口
    • 把开发好的java类部署到web 服务器中

把实现了Servlet接口的Java程序叫做,Servlet

6.2、HelloServlet

Servlet接口sun公司有两个默认的实现类:HttpServlet,

  1. 构建一个普通的Maven项目,删掉里面的src目录,以后我们学习就在这个项目里建立Moudel;这个空的工程就是Maven主工程;

  2. 关于Maven父子工程的理解:

    父项目中会有

        <name>javaweb-01-maven</name>
        <modules>
            <module>servlet-01</module>
        </modules>
    
    

    子项目中会有

        <parent>
            <artifactId>javaweb-01-maven</artifactId>
            <groupId>com.kutsu</groupId>
            <version>1.0-SNAPSHOT</version>
        </parent>
    
    

    父项目中的java子项目可以直接使用

    son extends father
    
  3. Maven 环境优化

    1. 修改 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_4_0.xsd"
               version="4.0">
      
          <servlet>
              <servlet-name>hellos</servlet-name>
              <servlet-class>com.ku.servlet.helloworldSerlvet</servlet-class>
          </servlet>
          <servlet-mapping>
              <servlet-name>hellos</servlet-name>
              <url-pattern>/urls</url-pattern>
          </servlet-mapping>
      
      </web-app>
      
    2. 将maven的结构搭建完整,导入 servlet 相关的包

          <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
          </dependency>
          <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.2</version>
          </dependency>
          <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
          </dependency>
      
  4. 编写一个Servlet程序

    1. 编写一个普通类

    2. 实现Servlet接口,这里我们直接继承 HttpServlet

      import java.io.*;
      import javax.servlet.*;
      import javax.servlet.http.*;
      
      public class HelloServlet extends HttpServlet {
      
          //由于get或者post只是请求实现的不同的方式,可以相互调用,业务逻辑都一样
          @Override
          protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
              response.setContentType("text/html");
              response.setCharacterEncoding("utf-8");
              PrintWriter out = response.getWriter();
              out.println("<html>");
              out.println("<head>");
              out.println("<title>Hello World!</title>");
              out.println("</head>");
              out.println("<body>");
              out.println("<h1>Hello World!你好</h1>");
              out.println("</body>");
              out.println("</html>");
          }
          @Override
          protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
              super.doPost(req, resp);
          }
      }
      
  5. 编写Servlet的映射

    为什么需要映射:我们写的是JAVA程序,但是要通过浏览器访问,而浏览器需要连接web服务器,所以我们需要在web服务器中注册我们写的Servlet,还需给他一个浏览器访问的路径

        <servlet>
            <servlet-name>hello1</servlet-name>
            <servlet-class>com.qq.servlet.HelloServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>hello1</servlet-name>
            <url-pattern>/he1</url-pattern>
        </servlet-mapping>
    
  6. 配置tomcat

    注意:配置项目发布的路径就可以了

  7. 启动测试

posted @ 2020-12-01 23:15  KutsuHaku  阅读(168)  评论(0编辑  收藏  举报
页脚 HTML 代码