9
를 사용하여 주석을 XML을 역 직렬화하는 방법 나는 다음과 같은 XML 스키마가 : 여기 주목해야 할 두 가지 중요한 일이있다FasterXML
public class Schedule
{
public int semester;
public Course[] courses;
}
public class Course
{
public String code;
public int credits;
public String name;
}
:
<Courses semester="1">
<Course code="A231" credits="3">Intermediate A</Course>
<Course code="A105" credits="2">Intro to A</Course>
<Course code="B358" credits="4">Advanced B</Course>
</Courses>
내가 같이 POJO에이 변환 할 필요를 :
- 코스는 태그에 싸여되지 않은 객체
- 일부 속성 값이
이 XML을 deserialize하기 위해 FasterXML을 얻으려면 내 개체에 주석을 달아야합니까?
@JacksonXmlRootElement(localName = "Courses")
class Schedule {
@JacksonXmlProperty(isAttribute = true)
private int semester;
@JacksonXmlProperty(localName = "Course")
private Course[] courses;
// getters, setters, toString, etc
}
class Course {
@JacksonXmlProperty(isAttribute = true)
private String code;
@JacksonXmlProperty(isAttribute = true)
private int credits;
@JacksonXmlText(value = true)
private String name;
// getters, setters, toString, etc
}
지금, 당신은 XmlMapper
대신 ObjectMapper
를 사용해야합니다 :이 방법으로 XML 주석을 사용할 수 후
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.3.3</version>
</dependency>
:
문자열 -> 문자열 –