• 黄菊华老师,Java Servlet毕业设计毕设辅导课(4):Servlet 实例


    Servlet 实例

    Servlet 是服务 HTTP 请求并实现 javax.servlet.Servlet 接口的 Java 。Web 应用程序开发人员通常编写 Servlet 来扩展 javax.servlet.http.HttpServlet,并实现 Servlet 接口的抽象类专门用来处理 HTTP 请求。

    Hello World 示例代码

    下面是 Servlet 输出 Hello World 的示例源代码:

    1. import javax.servlet.ServletException;
    2. import javax.servlet.http.HttpServlet;
    3. import javax.servlet.http.HttpServletRequest;
    4. import javax.servlet.http.HttpServletResponse;
    5. import java.io.IOException;
    6. import java.io.PrintWriter;
    7. public class test extends HttpServlet {
    8.     private String message;
    9.     public void init() throws ServletException
    10.     {
    11.         // 执行必需的初始化
    12.         message = "Hello World,java";
    13.     }
    14.     public void doGet(HttpServletRequest request,
    15.                       HttpServletResponse response)
    16.             throws ServletException, IOException
    17.     {
    18.         // 设置响应内容类型
    19.         response.setContentType("text/html");
    20.         // 实际的逻辑是在这里
    21.         PrintWriter out = response.getWriter();
    22.         out.println("

      get=" + message + "

      "
      );
    23.     }
    24.     protected void doPost(HttpServletRequest request,
    25.                           HttpServletResponse response)
    26.             throws ServletException, IOException
    27.     {
    28.         // 设置响应内容类型
    29.         response.setContentType("text/html");
    30.         // 实际的逻辑是在这里
    31.         PrintWriter out = response.getWriter();
    32.         out.println("

      post=" + message + "

      "
      );
    33.     }
    34.     public void destroy()
    35.     {
    36.         // 什么也不做
    37.     }
    38. }

    Web工程设置

    设置

    (1)在WEB-INF目录下点击右键,选择New-->Driectory,分别创建 classes 和 lib两个目录

    (2)左上角选择 File-->Project Structure...,进入Project Structure,选择Modules-->选择项目"servletTest02"-->切换到Paths选项卡-->勾选"Use module compile output path",将“Output path”和"Test output path"都改为之前创建的classes目录。设置好后 先别关掉该窗口,下面一步还得用到

    (3)在同样的界面,选中Dependencies选项卡-->点击右边的 “+”,选择"JARs or directories...",选择创建的lib目录,选择Jar Direcotry。

    测试运行JSP

    在index.jsp中的body中输入 Hello world字符串:

    然后点击屏幕右上角 运行 按钮

    在浏览器中输入 http://localhost:8080就能看到运行效果了:

    https://img-blog.csdnimg.cn/20181222161255672.png

    以上就是一个简单的JavaWeb工程,下面介绍在这个工程上面创建一个Servlet

    创建Servlet

    在src目录下新建test类,让它继承HttpServlet,并且实现doGet方法,在方法内部中写返回数据

    代码:

    1. import javax.servlet.ServletException;
    2. import javax.servlet.http.HttpServlet;
    3. import javax.servlet.http.HttpServletRequest;
    4. import javax.servlet.http.HttpServletResponse;
    5. import java.io.IOException;
    6. import java.io.PrintWriter;
    7. public class test extends HttpServlet {
    8.     private String message;
    9.     public void init() throws ServletException
    10.     {
    11.         // 执行必需的初始化
    12.         message = "Hello World,java";
    13.     }
    14.     public void doGet(HttpServletRequest request,
    15.                       HttpServletResponse response)
    16.             throws ServletException, IOException
    17.     {
    18.         // 设置响应内容类型
    19.         response.setContentType("text/html");
    20.         // 实际的逻辑是在这里
    21.         PrintWriter out = response.getWriter();
    22.         out.println("

      get=" + message + "

      "
      );
    23.     }
    24.     protected void doPost(HttpServletRequest request,
    25.                           HttpServletResponse response)
    26.             throws ServletException, IOException
    27.     {
    28.         // 设置响应内容类型
    29.         response.setContentType("text/html");
    30.         // 实际的逻辑是在这里
    31.         PrintWriter out = response.getWriter();
    32.         out.println("

      post=" + message + "

      "
      );
    33.     }
    34.     public void destroy()
    35.     {
    36.         // 什么也不做
    37.     }
    38. }

    配置web.xml

    在WEB-INF目录下的web.xml中配置配置标签,具体如下:

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    3.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4.          xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
    5.          version="4.0">
    6.     <servlet>
    7.         <servlet-name>hello</servlet-name>
    8.         <servlet-class>test</servlet-class>
    9.     </servlet>
    10.     <servlet-mapping>
    11.         <servlet-name>hello</servlet-name>
    12.         <url-pattern>/hi</url-pattern>
    13.     </servlet-mapping>
    14.    
    15. </web-app>

    测试验证

    在浏览器中输入http://localhost:8080/hi

    这里的端口后面的 /hi 就是刚才在web.xml中配置的servlet-mapping

    或者点击屏幕右上角 运行 按钮

  • 相关阅读:
    SEHLL常见逻辑运算符解析
    WSL2外部网络设置
    【无标题】
    2022年湖北武汉八大员考试报名详细介绍,甘建二
    【阿里云天池大赛赛题解析】 刷书笔记 Lesson 1 数据探索基础知识
    【设计模式】Java设计模式 - 单例模式
    R语言基于h2o包构建二分类模型:使用h2o.gbm构建梯度提升机模型GBM、使用h2o.auc计算模型的AUC值
    Awesome Video Transformer
    Vue render渲染函数
    python 爬取天气预报天气
  • 原文地址:https://blog.csdn.net/u013818205/article/details/128184686