将java对象转换为on对象,市面上有很多第三方jar包,如下:

jackson(最常用)

com.fasterxml.jackson.core

jackson-databind

2.11.2

gson

com.google.code.gson

gson

2.8.5

fastjson

com.alibaba

fastjson

1.2.62

一、构建测试项目

开发工具为:IDEA

后端技术:Spring boot ,Maven

引入依赖

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

org.springframework.boot

spring-boot-starter-parent

2.4.3

com.example

json

0.0.1-SNAPSHOT

WysXk json

Demo project for Spring Boot

1.8

org.springframework.boot

spring-boot-starter-thymeleaf

org.springframework.boot

spring-boot-starter-web

org.projectlombok

lombok

true

org.springframework.boot

spring-boot-starter-test

test

org.springframework.boot

spring-boot-maven-plugin

org.projectlombok

lombok

可以从上面看出,并未引入Jackson相关依赖,这是因为Spring boot的起步依赖spring-boot-starter-web 已经为我们传递依赖了Jackson JSON库。

当我们不用它,而采用其他第三方jar包时,我们可以排除掉它的依赖,可以为我们的项目瘦身。

org.springframework.boot

spring-boot-starter-web

jackson-core

com.fasterxml.jackson.core

二、jackson转换

1.构建User实体类

import lombok.AllArgsConstructor;

import lombok.Data;

import lombok.NoArgsConstructor;

@Data

@NoArgsConstructor

@AllArgsConstructor

public class UserEntity {

private String userName;

private int age;

private String sex;

}

代码如下(示例):

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

import seaborn as sns

import warnings

warnings.filterwarnings('ignore')

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

2.controller类

Java对象转换为json对象

@Controller

public classWysXk JsonController {

@GetMapping("/json1")

//思考问题,正常返回它会走视图解析器,而json需要返回的是一个字符串

//市面上有很多的第三方jar包可以实现这个功能,jackson,只需要一个简单的注解就可以实现了

//@ResponseBody,将服务器端返回的对象转换为json对象响应回去

@ResponsWysXkeBody

public String json1() throws JsonProcessingException {

//需要一个jackson的对象映射器,就是一个类,使用它可以将对象直接转换成json字符串

ObjectMapper mapper = new ObjectMapper();

//创建对象

UserEntity userEntity = new UserEntity("笨笨熊", 18, "男");

System.out.println(userEntity);

//将java对象转换为json字符串

String str = mapper.writeValueAsString(userEntity);

System.out.println(str);

//由于使用了@ResponseBody注解,这里会将str以json格式的字符串返回。

return str;

}

@GetMapping("/json2")

@ResponseBody

public String json2() throws JsonProcessingException {

ArrayList userEntities = new ArrayList<>();

UserEntity user1 = new UserEntity("笨笨熊", 18, "男");

UserEntity user2 = new UserEntity("笨笨熊", 18, "男");

UserEntity user3 = new UserEntity("笨笨熊", 18, "男");

userEntities.add(user1);

userEntities.add(user2);

userEntities.add(user3);

return new ObjectMapper().writeValueAsString(userEntities);

}

}

Date对象转换为json对象

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

java 视图对象转换,使用spring boot开发时java对象和Json对象转换的问题_JavaScript_网络编程...相关推荐

  1. spring boot ajax 415,解决@RequestBody接收json对象报错415的问题

    @RequestBody接收json对象报错415 前端请求: $.ajax({ url: basePath() + "/index/login.do", type : " ...

  2. java伪装成mysql从节点_开发时java项目启动时需要连mysql等,有没有什么工具可以mock连接使得启动顺利不报错?...

    如果是非单元测试 mock 一个数据库连接不难,实际上只要 mock 一个 DataSource 对象,然后根据项目实际初始化方式放进去就可以了,而这个对象实际连接到本地的任意数据库即可.下面的例子使 ...

  3. Spring Boot——开发新一代Spring Java应用

    2019独角兽企业重金招聘Python工程师标准>>> Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Be ...

  4. 【直播回顾】云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第19讲):Java Spring Cloud微服务架构模式与开发实战...

    主讲人:徐雷(云栖社区特邀Java专家) 徐雷,花名:徐雷frank:资深架构师,MongoDB中文社区联席主席,吉林大学计算机学士,上海交通大学硕士.从事了 10年+开发工作,专注于分布式架构,Ja ...

  5. 视频教程-Vue、Spring Boot开发小而完整的Web前后端分离项目实战-Java

    Vue.Spring Boot开发小而完整的Web前后端分离项目实战 3年多.net开发经验:5年的java后端开发经验,熟悉行.net,java流行技术,拥有多个.net,java web企业级应; ...

  6. 云栖社区特邀专家徐雷——Java Spring Boot开发实战系列课程【往期直播回顾】...

    徐雷,花名:徐雷frank:资深架构师,MongoDB中文社区联席主席,吉林大学计算机学士,上海交通大学硕士.从事了 10年+开发工作,专注于分布式架构,Java Spring Boot.Spring ...

  7. 使用Spring Boot来加速Java web项目的开发

    我想,现在企业级的Java web项目应该或多或少都会使用到Spring框架的. 回首我们以前使用Spring框架的时候,我们需要首先在(如果你使用Maven的话)pom文件中增加对相关的的依赖(使用 ...

  8. Spring Boot开发介绍

    Spring Boot开发介绍 Spring Boot介绍 安装Spring Boot插件 创建Spring Boot项目 Idea 创建Spring Boot项目失败 解决方法1-更换为aliyun ...

  9. Spring Boot开发中,经常听到的PO、VO、DAO、BO、DTO、POJO到底是什么?

    在Spring Boot开发中,我们经常会听到诸如PO.VO.DAO.BO.DTO.POJO等概念.这些术语看起来很相似,但它们之间有着不同的含义和用途.在本文中,我们将详细介绍这些概念,并解释它们在 ...

最新文章

  1. Mybatis注解学习记录
  2. oracle数据库如何写翻页_ORACLE数据库分页查询/翻页 最佳实践
  3. 「后端小伙伴来学前端了」Vue中利用全局事件总线改造 TodoList 案例
  4. Python爬虫开发:url中文字符编码的两种解决方式
  5. junit5 与 surefire 对接使用
  6. linux上安装python2.6.9_在Linux CentOS 6.6上安装Python 2.7.9
  7. intellij idea jdk language level
  8. ASP.NET Core部署到CentOS7,使用Nginx代理
  9. 智能家居无线系统为代表的Zigbee和Z-Wave协议的介绍,有线和无线的各自优势?
  10. 前后端交互、Node、npm、Express、mysql基础
  11. android手机内存越来越小,手机内存越来越小怎么办 手机内存清理方法【步骤】...
  12. CentOS 8.3.2011 镜像在PC上安装选择安装源时提示:设置基础软件仓库时出错
  13. QT开发的虚拟示波器代码分享
  14. 如何用计算机制作动态图,电脑怎么制作动态图,如何制作动态壁纸
  15. 数据库系统概述之断言
  16. ArcEngine添加指北针
  17. Flink实操 : DataSource操作
  18. 关于SCCM软件分发管理分享
  19. 领英让出的市场,有谁能补位成功?
  20. 搜索框和按钮放在同一行

热门文章

  1. python Elasticsearch update
  2. Uncaught TypeError: Cannot read property 'setAttribute' of null
  3. np.concatenate
  4. c++ char **argv 赋值
  5. pycuda write complex numbers — errors:class “cuComplex” has no member “i”
  6. Win10 TensorFlow(gpu)安装详解
  7. java.lang.UnsatisfiedLinkError
  8. ubuntu 关闭显示,关闭显卡,命令与图形切换
  9. 51单片机除法c语言,求一个 89C51 简易计算器的c语言程序 只要加减乘除就行!
  10. mysql8.0用mybatis哪个版本_SpringBoot整合MyBatis与MySql8.0