공통코드 추가정보 컬럼 특수문자 변환 serializer 로직 추가
This commit is contained in:
@@ -1,5 +1,9 @@
|
|||||||
package com.kamco.cd.kamcoback.code.dto;
|
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 com.kamco.cd.kamcoback.common.utils.interfaces.JsonFormatDttm;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotEmpty;
|
||||||
@@ -27,8 +31,13 @@ public class CommonCodeDto {
|
|||||||
private boolean used;
|
private boolean used;
|
||||||
private Long parentId;
|
private Long parentId;
|
||||||
|
|
||||||
|
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||||
private String props1;
|
private String props1;
|
||||||
|
|
||||||
|
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||||
private String props2;
|
private String props2;
|
||||||
|
|
||||||
|
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||||
private String props3;
|
private String props3;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -42,8 +51,13 @@ public class CommonCodeDto {
|
|||||||
private String description;
|
private String description;
|
||||||
private boolean used;
|
private boolean used;
|
||||||
|
|
||||||
|
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||||
private String props1;
|
private String props1;
|
||||||
|
|
||||||
|
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||||
private String props2;
|
private String props2;
|
||||||
|
|
||||||
|
@JsonDeserialize(using = HtmlEscapeDeserializer.class)
|
||||||
private String props3;
|
private String props3;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,8 +97,13 @@ public class CommonCodeDto {
|
|||||||
|
|
||||||
@JsonFormatDttm private ZonedDateTime updatedDttm;
|
@JsonFormatDttm private ZonedDateTime updatedDttm;
|
||||||
|
|
||||||
|
@JsonSerialize(using = HtmlUnescapeSerializer.class)
|
||||||
private String props1;
|
private String props1;
|
||||||
|
|
||||||
|
@JsonSerialize(using = HtmlUnescapeSerializer.class)
|
||||||
private String props2;
|
private String props2;
|
||||||
|
|
||||||
|
@JsonSerialize(using = HtmlUnescapeSerializer.class)
|
||||||
private String props3;
|
private String props3;
|
||||||
|
|
||||||
@JsonFormatDttm private ZonedDateTime deletedDttm;
|
@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