2024-08-21 수요일
에 xml 관련 라이브러리를 추가하게되면 RestTemplate의 기본 Content-Type 설정이 로 바뀌게 된다. RestTemplate을 사용할 때 Content-Type을 명시해서 사용했다면 문제가 없지만 기본 값으로 사용했다면 문제가 생길 수 있다. Content-Type 기본 값이 에서 로 바뀌기 때문이다. RestTemplate.HttpEn…
2024-08-20 화요일
XML을 표시하는 방법에는 두 가지가 있다. Child Elements Attributes Java에서 Object를 XML로 변환하기 위해서는 이런 방식으로 할 수 있다. 출력 결과 기본적으로 Child Elements 방식으로 출력한다. Attributes 방식으로 출력하기 위해서는 Class에서 각 property에 붙여주면 된다. 그러면 Ann…
2024-08-19 월요일
Spring Boot에서 XML Parsing을 위해 jackson 라이브러리를 사용했다. Spring Boot에서는 기본적으로 jackson을 사용할 수 있지만 xml을 다루기 위해서는 library를 추가해줘야한다. Maven Repository: com.fasterxml.jackson.dataformat » jackson-dataformat-xml…
2024-01-22 월요일
API 연동 작업 도중 API응답이 좀 특이한 경우가 있었다. 예시로 보면 이렇게 JSON 안에 String을 넣어놓은 경우다. 이럴 경우 DTO를 작성할 때 해당 값의 타입을 String으로 하지 않으면 오류가 발생한다. 하지만 객체로 받는 방법이 있다. 를 이용해서 set이 될 때 동작을 직접 구성해줄 수 있다. References Jackson De…
2024-01-22 월요일
JsonString을 ObjectMapper를 통해서 Java의 Class로 변환할 때 JsonString에 존재하는 모든 값을 Class의 Property로 넣어주지 않으면 오류가 발생한다. 원하는 값만 Class로 작성해주고 싶다면 를 이용하면 된다. 를 사용하면 모르는 값은 무시한다. References [JAVA] ObjectMapper의 read…
2024-01-18 목요일
Jackson 패키지에서 JsonNode를 사용할 때 오브젝트의 value를 가져오는 방법 중 주로 사용하는 2가지가 있다. get 메서드와 path 메서드인데 사용 방법은 똑같지만 몇 가지 차이점이 있는 것 같은데 오늘 살펴볼 내용은 없는 key를 가져올 때의 차이를 살펴본다. 결론부터 말하면 path를 사용하는게 낫다. 기본 데이터 예시로 데이터를 이…
2024-01-09 화요일
에러 발생 외부 API를 이용해서 데이터를 받아오는 로직을 추가하고 있었다. API Response Body DTO를 작성해서 RestTemplate을 이용하여 API 요청을 하고 응답을 받았는데 DTO로 Parsing 하던 중 에러가 발생했다. 해결 과정 해당 에러를 검색해보니 자료가 좀 있었는데, 나랑은 상황이 좀 다른 글들이 많았다. (e.g. 을…
2022-10-06 목요일
나는 Spring Boot 프로젝트를 할 때 적용했지만 어차피 Spring Boot에 국한된 기능이 아닌 Java의 기능이니 Java 기준으로 설명하겠다. 준비 Intellij에서 Java Gradle 프로젝트를 생성해준다. Object Mapper를 사용하기 위해서 Jackson 모듈이 필요한데 Java면 gradle에 추가해줘야 한다. Spring B…