XML 도메인 모델
특징
- The XML data model is weak, its type system is complex and underpowered.
- its data integrity is almost completely procedural.
- it introduces hierarchical data structures that were outdated decades ago.
- However, data in XML format is attractive to work with in Java; we have nice tools.
XML로 도메인 모델 뽑아내기
DOM4J로 도메인 모델 뽑아내기
Session dom4jSession = session.getSession(EntityMode.DOM4J);
Element userXML =
(Element) dom4jSession.load(User.class, storedUserId);
- Element 클래스는 Dom4J API
화면에 출력하기
try {
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter writer = new XMLWriter( System.out, format);
writer.write( userXML );
} catch (IOException ex) {
throw new RuntimeException(ex);
}
맵핑할 때 node 속성 사용하기
- <class> 나 <property> 맵핑에서의 node 속성(node="name")은 XML 엘리먼트의 이름을 정의한다.
- <property> 맵핑에서 node 속성(node="@name")은 XML 엘리먼트의 속성을 정의한다.
- <property> 맵핑에서의 node 속성(node="name/@attname")은 name이라는 자식 엘리먼트에 attname이라는 속성을 정의한다.
- 위의 속성을 사용해서 맵핑하면, 도메인 모델을 표현할 XML을 원하는 형태로 정의할 수 있다.