객체를 xml파일로 만들기
xom-1.1.jar 파일 필요
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 54 55 56 |
import nu.xom.*; import java.io.*; import java.util.*; public class Person { private String first,last; public Person(String first, String last) { //super(); this.first = first; this.last = last; } public Element getXML(){ Element person = new Element("person"); Element firstName = new Element("first"); firstName.appendChild(first); Element lastName = new Element("last"); lastName.appendChild(last); person.appendChild(firstName); person.appendChild(lastName); return person; } // XML 엘리먼트에서 Person을 복원하는 생성자 public Person(Element person){ first = person.getFirstChildElement("first").getValue(); last = person.getFirstChildElement("last").getValue(); } public String toString(){ return first +" "+ last; } // 사람이 읽을 수 있는 형태로 변환 public static void format(OutputStream os,Document doc) throws Exception{ Serializer serializer = new Serializer(os,"ISO-8859-1"); serializer.setIndent(4); serializer.setMaxLength(60); serializer.write(doc); serializer.flush(); } public static void main(String[] args) throws Exception{ // TODO Auto-generated method stub List<Person> people = Arrays.asList( new Person("Dr. Juwon","Sung"), new Person("찬호","박"), new Person("세리","박") ); System.out.println(people); Element root = new Element("people"); for(Person p:people) root.appendChild(p.getXML()); Document doc = new Document(root); format(System.out,doc); format(new BufferedOutputStream(new FileOutputStream("People.xml")),doc); } } |
출처 : http://cafe.naver.com/javastudy2/12