JSON 필터 속성, 속성 변환기 설정 방법
package com.zf.vo;
import java.sql.Timestamp;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zf.control.JsonTimestampFormater;
public class Person {
private String name ;
@JsonIgnore // json String ,
private int age ;
@JsonSerialize(using = JsonTimestampFormater.class) // Json ,
private Timestamp birthday ;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Timestamp getBirthday() {
return birthday;
}
public void setBirthday(Timestamp birthday) {
this.birthday = birthday;
}
}
유형 변환기는 다음과 같이 정의됩니다.
package com.zf.control;
import java.io.IOException;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
public class JsonTimestampFormater extends JsonSerializer<Timestamp> {
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
@Override
public void serialize(Timestamp value, JsonGenerator jgen,
SerializerProvider sp) throws IOException,
JsonProcessingException {
jgen.writeString(sdf.format(value));
}
}
테스트 클래스는 다음과 같습니다.
package com.zf.test;
import java.io.IOException;
import java.sql.Timestamp;
import com.fasterxml.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.zf.vo.Person;
public class Test {
public static void main(String[] args) throws JsonGenerationException, JsonMappingException, IOException {
Person person = new Person();
person.setAge(19);
person.setName("xxxxx");
person.setBirthday(new Timestamp(System.currentTimeMillis()));
ObjectMapper mapper = new ObjectMapper();
String jsonstr = mapper.writeValueAsString(person);
System.out.println(jsonstr);
}
}
인쇄 결과
{"name":"xxxxx","birthday":"2012-08-03 03:05:06"}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
콘텐츠 SaaS | JSON 스키마 양식 빌더Bloomreach Content를 위한 JSON Form Builder 맞춤형 통합을 개발합니다. 최근 Bloomreach Content SaaS는 내장 앱 프레임워크를 사용하여 혁신적인 콘텐츠 유형 필드를 구축할...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.