JavaWeb实体类转为json对象的实现方法

 更新时间:2020年12月20日 08:39:14   作者:牛哄哄的柯南  
这篇文章主要介绍了JavaWeb实体类转为json对象的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1.创建个实体类

实体类User代码:

package com.neuedu.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * Keafmd
 *
 * @ClassName: User
 * @Description: user实体类
 * @author: 牛哄哄的柯南
 * @date: 2020-12-17 14:08
 */

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {

  private Integer id;
  private String name;
  private String address;
  private Date date;

}

我没有自己写构造函数和Setter(),Getter()以及toString()方法,而是使用了lombok自动生成的。

2.使用类库 fastjson

添加依赖:

<dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>fastjson</artifactId>
   <version>1.2.73</version>
</dependency>

3.测试一下

JsonTest 代码:

package com.neuedu.entity;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import org.junit.Test;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * Keafmd
 *
 * @ClassName: Test
 * @Description: user测试类
 * @author: 牛哄哄的柯南
 * @date: 2020-12-17 14:10
 */

public class JsonTest {

  @Test
  public void test(){
    List userList = new ArrayList();
    userList.add(new User(1,"牛哄哄的柯南1","某某省某某市1",new Date()));
    userList.add(new User(2,"牛哄哄的柯南2","某某省某某市2",new Date()));
    userList.add(new User(3,"牛哄哄的柯南3","某某省某某市3",new Date()));
    userList.add(new User(4,"牛哄哄的柯南4","某某省某某市4",new Date()));
    userList.add(new User(5,"牛哄哄的柯南5","某某省某某市5",new Date()));
    userList.add(new User(6,"牛哄哄的柯南6","某某省某某市6",new Date()));


    //List集合转换成 json


    String json = JSON.toJSONString(userList,  SerializerFeature.WriteDateUseDateFormat );


    System.out.println(json);

  }
}

 运行结果:

[{"address":"某某省某某市1","date":"2020-12-17 21:09:21","id":1,"name":"牛哄哄的柯南1"},
{"address":"某某省某某市2","date":"2020-12-17 21:09:21","id":2,"name":"牛哄哄的柯南2"},
{"address":"某某省某某市3","date":"2020-12-17 21:09:21","id":3,"name":"牛哄哄的柯南3"},
{"address":"某某省某某市4","date":"2020-12-17 21:09:21","id":4,"name":"牛哄哄的柯南4"},
{"address":"某某省某某市5","date":"2020-12-17 21:09:21","id":5,"name":"牛哄哄的柯南5"},
{"address":"某某省某某市6","date":"2020-12-17 21:09:21","id":6,"name":"牛哄哄的柯南6"}]

Process finished with exit code 0

4.Controller代码

UserController代码:

package com.neuedu.controller;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.neuedu.entity.User;

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;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * Keafmd
 *
 * @ClassName: UserController
 * @Description: UserController
 * @author: 牛哄哄的柯南
 * @date: 2020-12-17 14:20
 *
 *
 * http://127.0.0.1:8080/web/user
 */

@WebServlet(name="UserController" ,urlPatterns = "/user")
public class UserController extends HttpServlet {

  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

    List userList = new ArrayList();
    userList.add(new User(1,"牛哄哄的柯南1","某某省某某市1",new Date()));
    userList.add(new User(2,"牛哄哄的柯南2","某某省某某市2",new Date()));
    userList.add(new User(3,"牛哄哄的柯南3","某某省某某市3",new Date()));
    userList.add(new User(4,"牛哄哄的柯南4","某某省某某市4",new Date()));
    userList.add(new User(5,"牛哄哄的柯南5","某某省某某市5",new Date()));
    userList.add(new User(6,"牛哄哄的柯南6","某某省某某市6",new Date()));

    String json = JSON.toJSONString(userList,  SerializerFeature.WriteDateUseDateFormat  );


    resp.setContentType("application/json");
    resp.setCharacterEncoding("utf-8");
    PrintWriter out = resp.getWriter();
    out.write(json);
    out.flush();
    out.close();

  }

  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    this.doGet(req, resp);
  }
}

启动服务访问http://127.0.0.1:8080/web/user

访问结果:

OK,到此就完成实体类转为json对象的需求了。更多相关Java实体类转为json对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Springboot swagger配置过程详解(idea社区版2023.1.4+apache-maven-3.9.3-bin)

    Springboot swagger配置过程详解(idea社区版2023.1.4+apache-maven-3

    这篇文章主要介绍了Springboot-swagger配置(idea社区版2023.1.4+apache-maven-3.9.3-bin),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • 关于java.util.Random的实现原理详解

    关于java.util.Random的实现原理详解

    Java实用工具类库中的类java.util.Random提供了产生各种类型随机数的方法,下面这篇文章主要给大家介绍了关于java.util.Random实现原理的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-08-08
  • SpringData关键字查询实现方法详解

    SpringData关键字查询实现方法详解

    这篇文章主要介绍了SpringData关键字查询实现方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • spring framework源码调试技巧

    spring framework源码调试技巧

    这篇文章给大家介绍了spring-framework源码调试方法,可以直接将最新代码clone到本地,如果想在代码做一些注释,也可以Fork到自己的仓库。本文采用Fork的方式,并添加了测试module,感兴趣的朋友一起看看吧
    2021-10-10
  • Java多线程文件分片下载实现的示例代码

    Java多线程文件分片下载实现的示例代码

    这篇文章主要介绍了Java多线程文件分片下载实现的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Spring配置与依赖注入基础详解

    Spring配置与依赖注入基础详解

    依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念。具体含义是:当某个角色(可能是一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在 传统的程序设计过程中,通常由调用者来创建被调用者的实例
    2022-08-08
  • @Accessors(chain = true)注解报错的解决方案

    @Accessors(chain = true)注解报错的解决方案

    这篇文章主要介绍了@Accessors(chain = true)注解报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 基于SpringBoot的Dubbo泛化调用的实现代码

    基于SpringBoot的Dubbo泛化调用的实现代码

    这篇文章主要介绍了基于SpringBoot的Dubbo泛化调用的实现,从泛化调用实现的过程来看,我们可以对自己提供所有服务进行测试,不需要引入调用的接口,减少代码的侵入,需要的朋友可以参考下
    2022-04-04
  • Java使用递归法解决汉诺塔问题的代码示例

    Java使用递归法解决汉诺塔问题的代码示例

    这篇文章主要介绍了Java使用递归法解决汉诺塔问题的代码示例,汉诺塔问题是使用递归解决问题的经典范例,用到的算法非常简单,需要的朋友可以参考下
    2016-04-04
  • springboot集成es插入和查询的简单使用示例详解

    springboot集成es插入和查询的简单使用示例详解

    这篇文章主要介绍了springboot集成es 插入和查询的简单使用,本文分步骤结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08

最新评论