added json serializer and deserializer

master
Niclas Thobaben 2021-07-18 19:38:46 +02:00
parent 48349adf5e
commit 48db5b91dc
2 changed files with 11 additions and 3 deletions

View File

@ -9,11 +9,15 @@ const SUPPORTED_TYPES = {
},
'date-iso8601': {
name: 'LocalDate',
imports: [ 'java.time.LocalDate' ]
imports: [ 'java.time.LocalDate', 'com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer', 'com.fasterxml.jackson.datatype.jsr310.ser.LocalDateDeserializer' ],
serializer: 'LocalDateSerializer',
deserializer: 'LocalDateDeserializer'
},
'date-time-iso8601': {
name: 'LocalDateTime',
imports: [ 'java.time.LocalDateTime' ]
imports: [ 'java.time.LocalDateTime', 'com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer', 'com.fasterxml.jackson.datatype.jsr310.ser.LocalDateDeserializer' ],
serializer: 'LocalDateTimeSerializer',
deserializer: 'LocalDateTimeDeserializer'
},
decimal: {
name: 'BigDecimal',

View File

@ -15,6 +15,8 @@ import lombok.experimental.Accessors;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import org.codehaus.jackson.annotate.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
{{#imports}}
import {{{.}}};
@ -33,7 +35,9 @@ public class {{name}} {{#implements.length}}implements {{#implements}}{{name}}{{
{{#fields}}
{{#description}}/** {{.}} **/{{/description}}
@JsonProperty("{{name}}")
@JsonProperty("{{name}}"){{#serializer}}
@JsonSerializer(using = {{.}}.class){{/serializer}}{{#deserializer}}
@JsonDeserializer(using = {{.}}.class){{/deserializer}}
{{#required}}@NonNull{{/required}}
private {{{type.name}}} {{name}};