[general] Refactoring chunithm UpsertUserAll request and some clean up

This commit is contained in:
samnyan
2020-03-28 22:23:22 +09:00
parent 9a4ca3a612
commit 528b2f8b4d
70 changed files with 310 additions and 241 deletions

View File

@@ -13,7 +13,6 @@ import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)

View File

@@ -2,10 +2,12 @@ package icu.samnyan.aqua.sega.util.jackson;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.json.JsonWriteFeature;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.json.JsonMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
@@ -25,16 +27,17 @@ public class StringMapper {
private final ObjectMapper mapper;
public StringMapper() {
mapper = new ObjectMapper().configure(JsonGenerator.Feature.WRITE_NUMBERS_AS_STRINGS, true);
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
mapper.configure(SerializationFeature.WRITE_ENUMS_USING_INDEX, true);
SimpleModule module = new SimpleModule();
module.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
module.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
module.addSerializer(Boolean.class, new BooleanStringSerializer());
module.addSerializer(boolean.class, new BooleanStringSerializer());
module.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
mapper.registerModule(module);
mapper = JsonMapper.builder()
.enable(JsonWriteFeature.WRITE_NUMBERS_AS_STRINGS)
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
.configure(SerializationFeature.WRITE_ENUMS_USING_INDEX, true)
.addModule(module)
.build();
}
public String write(Object o) throws JsonProcessingException {
@@ -42,7 +45,7 @@ public class StringMapper {
}
public <T> T convert(Map<String, Object> map, Class<T> toClass) {
public <T> T convert(Object map, Class<T> toClass) {
return mapper.convertValue(map, toClass);
}