jackson学习之九:springboot整合(配置文件)

欢迎访问我的GitHub

这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos

系列文章汇总

jackson学习之一:基本信息

jackson学习之二:jackson-core

jackson学习之三:常用API操作

jackson学习之四:WRAP_ROOT_VALUE(root对象)

jackson学习之五:JsonInclude注解

jackson学习之六:常用类注解

jackson学习之七:常用Field注解

jackson学习之八:常用方法注解

jackson学习之九:springboot整合(配置文件)

jackson学习之十(终篇):springboot整合(配置类)

关于springboot整合jackson

本文是《jackson学习》系列的第九篇,学习如何在springboot项目中使用jackson,以springboot-2.3.3版本为例,jackson是springboot的默认json处理工具,如下图红框所示,jackson在maven配置中被spring-boot-starter-web间接依赖,可直接使用:

在这里插入图片描述

在springboot项目中常用的配置方式有两种:

用properties或yml配置文件来配置,即本篇的内容;

用配置类来配置,这是下一篇文章的主题;

本篇概览

今天实战内容如下:

开发springboot应用,体验springboot默认支持jackson,包括jackson注解和ObjectMapper实例的注入;

在application.yml中添加jackson配置,验证是否生效;

源码下载

如果您不想编码,可以在GitHub下载所有源码,地址和链接信息如下表所示(https://github.com/zq2599/blog_demos):

名称 链接 备注
项目主页   https://github.com/zq2599/blog_demos   该项目在GitHub上的主页  
git仓库地址(https)   https://github.com/zq2599/blog_demos.git   该项目源码的仓库地址,https协议  
git仓库地址(ssh)   git@github.com:zq2599/blog_demos.git   该项目源码的仓库地址,ssh协议  

这个git项目中有多个文件夹,本章的应用在jacksondemo文件夹下,如下图红框所示:

在这里插入图片描述

jacksondemo是父子结构的工程,本篇的代码在springbootproperties子工程中,如下图:

在这里插入图片描述

开始实战

由于同属于《jackson学习》系列文章,因此本篇的springboot工程作为jacksondemo的子工程存在,pom.xml如下,需要注意的是parent不能使用spring-boot-starter-parent,而是通过dependencyManagement节点来引入springboot依赖:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <artifactId>jacksondemo</artifactId> <groupId>com.bolingcavalry</groupId> <version>1.0-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent> <groupId>com.bolingcavalry</groupId> <artifactId>springbootproperties</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springbootproperties</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <!--不用spring-boot-starter-parent作为parent时的配置--> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.3.3.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> <!-- swagger依赖 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> </dependency> <!-- swagger-ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpjyfp.html