SpringBoot 2.0 통합 잭 슨 설정 날짜 포맷 및 역 직렬 화 실현
7135 단어 SpringBoot2jackson날짜 포맷역 직렬 화
일단 POM.
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>io.cj.learning</groupId>
<artifactId>boot2exam</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>boot2exam</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<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>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
그리고 yml 파일.(물론 yml 이 물건 은 많은 사람들 이 싫어 합 니 다.저도 properties 버 전 을 썼 습 니 다)
spring:
jackson:
# :
#JsonInclude.Include.ALWAYS
#JsonInclude.Include.NON_DEFAULT
#JsonInclude.Include.NON_EMPTY (””) NULL
#JsonInclude.Include.NON_NULL NULL
default-property-inclusion: ALWAYS
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
위 설정 에 대응 하 는 properties 파일 버 전:
#jackson
spring.jackson.date-format = yyyy-MM-dd HH:mm:ss
#
spring.jackson.time-zone= GMT+8
#ALWAYS null, key
spring.jackson.default-property-inclusion=ALWAYS
그리고 컨트롤 러 와 JAVA Bean 을 정의 합 니 다.Controller:
package io.cj.learning.boot2exam.controller;
import io.cj.learning.boot2exam.model.DateFormatTest;
import org.springframework.web.bind.annotation.*;
import java.text.SimpleDateFormat;
import java.util.Date;
@RestController
@RequestMapping(value="/test")
public class TestController {
/**
* , java.util.date -> String
* @return
*/
@RequestMapping(value="/dateFormatTest", method = RequestMethod.GET)
@ResponseBody
public DateFormatTest dateFormatTest(){
DateFormatTest dateFormatTest = new DateFormatTest();
dateFormatTest.setIntProperties(100);
dateFormatTest.setDateProperties(new Date());
return dateFormatTest;
}
/**
* String -> java.util.date
*/
@RequestMapping(value="/dateFormatTest2" ,method = RequestMethod.POST)
public void dateFormatTest2(@RequestBody DateFormatTest model){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(model.getIntProperties());
System.out.println(sdf.format(model.getDateProperties()));
System.out.println(model.getStrProperties());
}
}
Java Bean:
package io.cj.learning.boot2exam.model;
import java.util.Date;
/**
* model,
*/
public class DateFormatTest {
private Integer intProperties;
private Date dateProperties;
private String strProperties;
public Integer getIntProperties() {
return intProperties;
}
public void setIntProperties(Integer intProperties) {
this.intProperties = intProperties;
}
public Date getDateProperties() {
return dateProperties;
}
public void setDateProperties(Date dateProperties) {
this.dateProperties = dateProperties;
}
public String getStrProperties() {
return strProperties;
}
public void setStrProperties(String strProperties) {
this.strProperties = strProperties;
}
}
주 클래스 시작:
package io.cj.learning.boot2exam;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Boot2examApplication {
public static void main(String[] args) {
SpringApplication.run(Boot2examApplication.class, args);
}
}
테스트:해 보 세 요.우선 날짜 서열 화 입 니 다.해 보 세 요.
그 다음 에 반 직렬 화 입 니 다.시도 해 보 세 요.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SpringBoot 2 Redis 통합 읽 기와 쓰기 작업 실현redis 설정 클래스,RedisConfig.java: 상수 클래스 는 redis key 의 접두사 로 사 용 됩 니 다.Constant.자바: 3.테스트 redis 의 기록 과 읽 기 를 통합 하 는 인 스 턴 스...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.