Java Servlet生成JSON格式数据并用jQuery显示的方法

下面是 Java Servlet 生成 JSON 格式数据并用 jQuery 显示的方法的完整攻略。

什么是 JSON?

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写。

Servlet 生成 JSON

1. 添加依赖

首先需要添加一个 JSON 库,常用的有 Gson 和 FastJSON。这里以 Gson 为例,在 pom.xml 文件中加入以下依赖:

<dependency>
  <groupId>com.google.code.gson</groupId>
  <artifactId>gson</artifactId>
  <version>2.8.6</version>
</dependency>

2. 编写 Servlet

在 Servlet 中,需要将数据转成 JSON 格式,代码如下:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        List<Student> students = new ArrayList<>();
        students.add(new Student("001", "Alice", "Female", 22));
        students.add(new Student("002", "Bob", "Male", 23));
        students.add(new Student("003", "Tom", "Male", 21));

        Gson gson = new Gson();
        String json = gson.toJson(students);

        response.setContentType("application/json;charset=utf-8");
        PrintWriter writer = response.getWriter();
        writer.write(json);
        writer.flush();
        writer.close();
}

在上述代码中,生成了一个包含三个学生信息的 List,然后通过 Gson 将 List 转成 JSON 格式,最后将 JSON 返回给客户端。

3. 测试

启动应用程序,在浏览器中访问 Servlet,应该能看到生成的 JSON 格式数据。

jQuery 显示 JSON

1. 添加依赖

需要在页面中引入 jQuery 库,在 HTML 文件中加入以下代码:

<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

2. 编写 JS 代码

编写 jQuery 代码,获取 Servlet 返回的 JSON 数据,代码如下:

$(function() {
  $.getJSON('./myServlet', function(data) {
    $.each(data, function(i, item) {
        $("#studentsTable").append(
            "<tr><td>" + item.id + "</td>" + 
            "<td>" + item.name + "</td>" + 
            "<td>" + item.gender + "</td>" + 
            "<td>" + item.age + "</td></tr>"
        );
    });
  });
});

在上述代码中,调用了 jQuery 的 getJSON 函数,获取了 Servlet 返回的 JSON 数据,然后通过 each 函数遍历每一个学生信息,并将其追加到 HTML 表格中显示。

3. 测试

在 HTML 文件中添加一个空的表格,然后启动应用程序,应该能看到从 Servlet 返回的 JSON 格式数据已经以表格形式显示在网页中。

以下是完整的示例代码:

Servlet:

@WebServlet(name = "MyServlet", urlPatterns = "/myServlet")
public class MyServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        List<Student> students = new ArrayList<>();
        students.add(new Student("001", "Alice", "Female", 22));
        students.add(new Student("002", "Bob", "Male", 23));
        students.add(new Student("003", "Tom", "Male", 21));

        Gson gson = new Gson();
        String json = gson.toJson(students);

        response.setContentType("application/json;charset=utf-8");
        PrintWriter writer = response.getWriter();
        writer.write(json);
        writer.flush();
        writer.close();
    }
}

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Servlet 显示 JSON 示例</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
    <table id="studentsTable" border="1">
        <thead>
            <tr>
                <td>ID</td>
                <td>姓名</td>
                <td>性别</td>
                <td>年龄</td>
            </tr>
        </thead>
        <tbody>

        </tbody>
    </table>
    <script>
        $(function() {
            $.getJSON('./myServlet', function(data) {
                $.each(data, function(i, item) {
                    $("#studentsTable").append(
                        "<tr><td>" + item.id + "</td>" + 
                        "<td>" + item.name + "</td>" + 
                        "<td>" + item.gender + "</td>" + 
                        "<td>" + item.age + "</td></tr>"
                    );
                });
            });
        });
    </script>
</body>
</html>

这两个文件需要放在同一个项目中,然后启动项目即可。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java Servlet生成JSON格式数据并用jQuery显示的方法 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • maven三个常用的插件使用介绍

    下面我就为您详细讲解“Maven 三个常用的插件使用介绍”的完整攻略,包括介绍、示例和操作流程,以及实际应用案例,希望能给您带来一些帮助。 什么是 Maven 插件? Maven 插件是一些可重用的代码块,可以在 Maven 构建过程中执行特定的任务或目标。Maven 有许多插件可用,而每个插件都提供了在 Maven 构建生命周期的不同阶段执行的一些目标。 …

    Java 2023年5月20日
    00
  • 详解Java的Hibernate框架中的Interceptor和Collection

    介绍 Hibernate是Java中最流行的ORM框架之一。它为我们提供了许多高级功能来访问和管理数据库,其中之一就是拦截器(Interceptor)和集合(Collection)。 拦截器是一个强大的机制,允许我们在Hibernate管理的对象的生命周期中执行各种操作。它允许我们调整Hibernate行为并采取行动以满足我们的需求。Collection则是…

    Java 2023年5月20日
    00
  • Java中五种不同方法的创建对象

    Java中创建对象有五种方法,分别是:使用new关键字、使用Class类的newInstance()方法、使用Constructor类的newInstance()方法、使用反序列化、使用clone()方法。下面将详细讲解这五种不同方法的创建对象的完整攻略。 1. 使用new关键字 使用new关键字是Java中最基本、最常用的创建对象的方法,它会在堆内存中分配…

    Java 2023年5月26日
    00
  • Spring依赖注入(DI)两种方式的示例详解

    下面我将为你详细讲解“Spring依赖注入(DI)两种方式的示例详解”的完整攻略。 1. 什么是Spring依赖注入(DI) Spring依赖注入(Dependency Injection,简称 DI)是指一个对象依赖于另一个对象。通俗一些的说法就是对象 A 需要对象 B 的协助完成某些功能,但是对象 A 并不负责创建对象 B,而是由 Spring 容器来创…

    Java 2023年5月20日
    00
  • Java中常用的日期类图文详解

    Java中常用的日期类图文详解 为什么要使用日期类? 在Java编程中,我们会经常用到日期类型的数据,就像我们平时在日常生活中也需要知道日期和时间。Java提供了专门处理日期和时间的类库,这些类库可以用来轻松地执行各种日期和时间相关的操作。使用Java日期类可以提高我们处理日期的效率和精度,同时也可以避免我们编写代码时进行复杂的计算和转换等操作。 Date类…

    Java 2023年5月20日
    00
  • Sprint Boot @JsonInclude使用方法详解

    @JsonInclude是Spring Boot中的一个注解,用于指定在序列化Java对象为JSON字符串时,哪些字段需要包含在内。在本文中,我们将详细介绍@JsonInclude注解的作用和使用方法,并提供两个示例。 @JsonInclude注解的作用 @JsonInclude注解用于指定在序列化Java对象为JSON字符串时,哪些字段需要包含在内。当使用…

    Java 2023年5月5日
    00
  • Java 如何读取Excel格式xls、xlsx数据工具类

    Java如何读取Excel格式xls、xlsx数据 在Java中,我们可以使用POI库来操作Excel文件,这个库支持读取和写入Excel文件。下面我们将通过两个示例来讲解如何读取Excel格式xls、xlsx数据。 示例1:读取Excel文件中的数据 首先我们需要引入相关依赖。在pom.xml文件中添加以下配置: <dependencies> …

    Java 2023年5月19日
    00
  • springboot整合spring-data-redis遇到的坑

    下面是Spring Boot整合Spring Data Redis的详细攻略,包括常见的坑和解决方法。 准备工作 首先,确保电脑中安装有Redis服务,并启动了Redis服务。然后在Spring Boot项目中添加以下依赖: <dependencies> <dependency> <groupId>org.springfr…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部