공통코드 추가정보 컬럼 특수문자 변환 serializer 로직 추가
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
package com.kamco.cd.kamcoback.code.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.kamco.cd.kamcoback.common.utils.html.HtmlEscapeDeserializer;
|
||||
import com.kamco.cd.kamcoback.common.utils.html.HtmlUnescapeSerializer;
|
||||
import com.kamco.cd.kamcoback.common.utils.interfaces.JsonFormatDttm;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
@@ -27,8 +31,13 @@ public class CommonCodeDto {
|
||||
private boolean used;
|
||||
private Long parentId;
|
||||
|
||||
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||
private String props1;
|
||||
|
||||
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||
private String props2;
|
||||
|
||||
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||
private String props3;
|
||||
}
|
||||
|
||||
@@ -42,8 +51,13 @@ public class CommonCodeDto {
|
||||
private String description;
|
||||
private boolean used;
|
||||
|
||||
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||
private String props1;
|
||||
|
||||
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||
private String props2;
|
||||
|
||||
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||
private String props3;
|
||||
}
|
||||
|
||||
@@ -83,8 +97,13 @@ public class CommonCodeDto {
|
||||
|
||||
@JsonFormatDttm private ZonedDateTime updatedDttm;
|
||||
|
||||
@JsonSerialize(using = HtmlUnescapeSerializer.class)
|
||||
private String props1;
|
||||
|
||||
@JsonSerialize(using = HtmlUnescapeSerializer.class)
|
||||
private String props2;
|
||||
|
||||
@JsonSerialize(using = HtmlUnescapeSerializer.class)
|
||||
private String props3;
|
||||
|
||||
@JsonFormatDttm private ZonedDateTime deletedDttm;
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.kamco.cd.kamcoback.common.utils.html;
|
||||
|
||||
import com.fasterxml.jackson.core.JacksonException;
|
||||
import com.fasterxml.jackson.core.JsonParser;
|
||||
import com.fasterxml.jackson.databind.DeserializationContext;
|
||||
import com.fasterxml.jackson.databind.JsonDeserializer;
|
||||
import java.io.IOException;
|
||||
import org.springframework.web.util.HtmlUtils;
|
||||
|
||||
public class HtmlEscapeDeserializer extends JsonDeserializer<Object> {
|
||||
|
||||
@Override
|
||||
public Object deserialize(JsonParser jsonParser, DeserializationContext deserializationContext)
|
||||
throws IOException, JacksonException {
|
||||
String value = jsonParser.getValueAsString();
|
||||
System.out.println("🔥 HtmlEscapeDeserializer 실행됨: " + value);
|
||||
System.out.println("convert : " + (value == null ? null : HtmlUtils.htmlEscape(value)));
|
||||
return value == null ? null : HtmlUtils.htmlEscape(value);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.kamco.cd.kamcoback.common.utils.html;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonGenerator;
|
||||
import com.fasterxml.jackson.databind.JsonSerializer;
|
||||
import com.fasterxml.jackson.databind.SerializerProvider;
|
||||
import java.io.IOException;
|
||||
import org.springframework.web.util.HtmlUtils;
|
||||
|
||||
public class HtmlUnescapeSerializer extends JsonSerializer<String> {
|
||||
@Override
|
||||
public void serialize(
|
||||
String value, JsonGenerator jsonGenerator, SerializerProvider serializerProvider)
|
||||
throws IOException {
|
||||
if (value == null) {
|
||||
jsonGenerator.writeNull();
|
||||
} else {
|
||||
jsonGenerator.writeString(HtmlUtils.htmlUnescape(value));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user