java 视图对象转换,使用spring boot开发时java对象和Json对象转换的问题_JavaScript_网络编程...
将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_网络编程...相关推荐
- spring boot ajax 415,解决@RequestBody接收json对象报错415的问题
@RequestBody接收json对象报错415 前端请求: $.ajax({ url: basePath() + "/index/login.do", type : " ...
- java伪装成mysql从节点_开发时java项目启动时需要连mysql等,有没有什么工具可以mock连接使得启动顺利不报错?...
如果是非单元测试 mock 一个数据库连接不难,实际上只要 mock 一个 DataSource 对象,然后根据项目实际初始化方式放进去就可以了,而这个对象实际连接到本地的任意数据库即可.下面的例子使 ...
- Spring Boot——开发新一代Spring Java应用
2019独角兽企业重金招聘Python工程师标准>>> Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Be ...
- 【直播回顾】云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第19讲):Java Spring Cloud微服务架构模式与开发实战...
主讲人:徐雷(云栖社区特邀Java专家) 徐雷,花名:徐雷frank:资深架构师,MongoDB中文社区联席主席,吉林大学计算机学士,上海交通大学硕士.从事了 10年+开发工作,专注于分布式架构,Ja ...
- 视频教程-Vue、Spring Boot开发小而完整的Web前后端分离项目实战-Java
Vue.Spring Boot开发小而完整的Web前后端分离项目实战 3年多.net开发经验:5年的java后端开发经验,熟悉行.net,java流行技术,拥有多个.net,java web企业级应; ...
- 云栖社区特邀专家徐雷——Java Spring Boot开发实战系列课程【往期直播回顾】...
徐雷,花名:徐雷frank:资深架构师,MongoDB中文社区联席主席,吉林大学计算机学士,上海交通大学硕士.从事了 10年+开发工作,专注于分布式架构,Java Spring Boot.Spring ...
- 使用Spring Boot来加速Java web项目的开发
我想,现在企业级的Java web项目应该或多或少都会使用到Spring框架的. 回首我们以前使用Spring框架的时候,我们需要首先在(如果你使用Maven的话)pom文件中增加对相关的的依赖(使用 ...
- Spring Boot开发介绍
Spring Boot开发介绍 Spring Boot介绍 安装Spring Boot插件 创建Spring Boot项目 Idea 创建Spring Boot项目失败 解决方法1-更换为aliyun ...
- Spring Boot开发中,经常听到的PO、VO、DAO、BO、DTO、POJO到底是什么?
在Spring Boot开发中,我们经常会听到诸如PO.VO.DAO.BO.DTO.POJO等概念.这些术语看起来很相似,但它们之间有着不同的含义和用途.在本文中,我们将详细介绍这些概念,并解释它们在 ...
最新文章
- Mybatis注解学习记录
- oracle数据库如何写翻页_ORACLE数据库分页查询/翻页 最佳实践
- 「后端小伙伴来学前端了」Vue中利用全局事件总线改造 TodoList 案例
- Python爬虫开发:url中文字符编码的两种解决方式
- junit5 与 surefire 对接使用
- linux上安装python2.6.9_在Linux CentOS 6.6上安装Python 2.7.9
- intellij idea jdk language level
- ASP.NET Core部署到CentOS7,使用Nginx代理
- 智能家居无线系统为代表的Zigbee和Z-Wave协议的介绍,有线和无线的各自优势?
- 前后端交互、Node、npm、Express、mysql基础
- android手机内存越来越小,手机内存越来越小怎么办 手机内存清理方法【步骤】...
- CentOS 8.3.2011 镜像在PC上安装选择安装源时提示:设置基础软件仓库时出错
- QT开发的虚拟示波器代码分享
- 如何用计算机制作动态图,电脑怎么制作动态图,如何制作动态壁纸
- 数据库系统概述之断言
- ArcEngine添加指北针
- Flink实操 : DataSource操作
- 关于SCCM软件分发管理分享
- 领英让出的市场,有谁能补位成功?
- 搜索框和按钮放在同一行
热门文章
- python Elasticsearch update
- Uncaught TypeError: Cannot read property 'setAttribute' of null
- np.concatenate
- c++ char **argv 赋值
- pycuda write complex numbers — errors:class “cuComplex” has no member “i”
- Win10 TensorFlow(gpu)安装详解
- java.lang.UnsatisfiedLinkError
- ubuntu 关闭显示,关闭显卡,命令与图形切换
- 51单片机除法c语言,求一个 89C51 简易计算器的c语言程序 只要加减乘除就行!
- mysql8.0用mybatis哪个版本_SpringBoot整合MyBatis与MySql8.0