XML
-
[Java] DOM4J를 이용한 XML(문자열, 파일) 파싱Java/기타 2021. 9. 23. 22:05
Maven 설정 org.dom4j dom4j 2.1.3Maven Repository : https://mvnrepository.com/artifact/org.dom4j/dom4j/2.1.3 문자열 및 파일 파싱import java.util.List;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.dom4j.io.SAXReader;public class StringToXml { public static void main(String[] args) throws Exception { // 1. XML 로드 // 1-1. 문자열 파싱 시 ..
-
[Java] JDOM2을 이용한 XML(문자열, 파일) 파싱Java/기타 2021. 9. 23. 22:02
Maven 설정 org.jdom jdom2 2.0.6Maven Repository : https://mvnrepository.com/artifact/org.jdom/jdom2/2.0.6 문자열 및 파일 파싱import java.io.File;import java.io.StringReader;import java.util.List;import org.jdom2.Document;import org.jdom2.Element;import org.jdom2.input.SAXBuilder;public class StringToXml { public static void main(String[] args) throws Exception { // 1. XML 로드 // 1..
-
[Spring Boot] REST API 만들기(13) - 예외 처리 및 테스트Spring Boot/2.4.x - REST API 만들기 2020. 5. 21. 16:48
스프링 MVC에서는 애플리케이션에서 발생하는 예외를 처리할 때는 @ExceptionHandler 어노테이션과 @ControllerAdvice 어노테이션을 사용합니다. @ExceptionHandler은 전체 애플리케이션의 예외 처리를 하지 못하기 때문에, 전체 애플리케이션의 예외 처리가 가능하고, ReponseEntity 형식을 사용할 수 있는 @ControllerAdvice 어노테이션을 이용해서 예외 처리를 하도록 하겠습니다. 1. ResourceNotFoundException.java 추가자원을 찾을 수 없다는 예외를 처리하기 위해 com.spring.board.exception 패키지를 생성한 후 ResourceNotFoundException 클래스를 추가하세요.ResourceNotFoundExcep..
-
[Spring Boot] REST API 만들기(12) - Content Negotiation 설정Spring Boot/2.4.x - REST API 만들기 2020. 5. 20. 17:46
REST에서는 하나의 리소스에 대해서 여러 형태의 Representation을 가질 수 있습니다. 어떤 요청을 처리할 때 응답을 application/json 형태로 할 수도 있고, application/xml 형태로 할 수도 있습니다. 클라이언트가 요청을 전달할 때 HTTP Header 중에서 Accept라는 이름을 이용해서 원하는 응답 형태를 명시하면, 서버에서는 클라이언트가 원하는 형태로 결과를 전달합니다. 이러한 처리 과정을 Content Negotiation이라고 합니다. 1. WebMvcConfig.java 수정WebMvcConfigurer의 configureContentNegotiation를 이용해서 미디어 타입을 설정할 수 있습니다.WebMvcConfig.java더보기123456789101..
-
[Spring Boot] REST API 만들기(11) - JSON Root Element 추가Spring Boot/2.4.x - REST API 만들기 2020. 5. 20. 16:07
JSON과 XML 두 방식을 모두 사용하는 경우 기본적으로 JSON은 Root Element룰 사용하지 않아 데이터 형식이 다른 경우가 있습니다. 게시글 목록 조회 시에 JSON으로 응답받는 경우 Root Element가 적용되지 않은 것을 확인할 수 있습니다. 게시글 목록 조회 시(http://localhost:8080/board) JSON, XML 응답JSON더보기12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879{ "boards": [ { "boar..
-
[Spring Boot] REST API 만들기(10) - XML 요청/응답 구현 및 테스트Spring Boot/2.4.x - REST API 만들기 2020. 5. 19. 17:50
스프링에서 제공하는 MarshallingHttpMessageConverter를 사용하여 XML 형식으로 데이터를 교환할 수 있도록 구현하겠습니다. MarshallingHttpMessageConverter는 스프링 OXM을 이용해서 객체와 XML 간의 상호 변환 작업을 합니다. Spring OXM스프링 OXM(Object Xml Mapping)은 XML 문서를 객체로 변환하거나, 객체를 XML 문서로 변환하는 기능을 제공합니다. 객체를 XML로 변환하는 과정은 XML Marshalling이라고 하며, XML을 객체로 변환하는 과정을 XML UnMarshalling이라고 합니다.Marshaller와 UnMarshaller 인터페이스는 구분되어 있지만, 실제 스프링에서 제공하는 구현체들은 하나의 클래스에서 두..
-
[Spring] REST XML Response 예제Spring/기타 2019. 5. 25. 16:50
1.Jackson 라이브러리 추가 Java 객체를 JSON으로 변환하기 위해서는 Jackson 라이브러를 추가해야합니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 4.0.0 com.tychejin springrest springrest war 1.0.0-BUILD-SNAPSHOT 1.8 4.1.4.RELEASE junit junit 4.12 test org.springframework spring-webmvc ${org.springframework-version} org.sprin..
-
[JAVA] The reference to entity "문자" must end with the ';' delimiter.Java/기타 2019. 5. 8. 12:46
오류 내용The reference to entity "문자" must end with the ';' delimiter. 오류 원인자바에서 XML을 파싱할 때 특수 문자가 포함된 경우 예약어와 구분하지 못하기 때문에 오류가 발생합니다. 해결 방법 특수문자를 파싱이 가능한 Escape 문자로 변환시켜야 합니다. 특수문자 Escape 문자 " " & & ' ' < > > 특정 문자열을 원하는 문자열로 변환하는 replaceAll() 함수를 사용하여 처리하시면 됩니다. replaceAll() 사용 시 특수문자 &를 변환할 경우 다른 특수문자(" ' )를 변환하기 전에 가장 먼저 변환하세요. Escape 문자로 변환된 문자의 & 부분을 &으로 변환시켜 원하시는 결..