使用JAXB處理JAVA和XML
使用JAXB完成Java和XML的相互轉化:
java-->xml:編排,marshal
xml-->java:反編排,unmarshal
package org.itat.xml;
import java.io.StringReader;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
import org.junit.Test;
public class TestJaxb {
/**
* marshal編排,java-->xml
*/
@Test
public void test01() {
try {
//1.建立JAXBContext例項
JAXBContext ctx = JAXBContext.newInstance(Student.class);
//2.建立marshaller例項
Marshaller marshaller = ctx.createMarshaller();
//3.建立student物件,並將該物件轉換為xml
Student student = new Student(1, "姚雙雙", 25, new Classroom(1, "08計算機應用技術", 2008));
//4.將java-->xml,並輸出
marshaller.marshal(student, System.out);
} catch (JAXBException e) {
e.printStackTrace();
}
}
/*
* 執行結果:
* <?xml version="1.0" encoding="UTF-8" standalone="yes"?><student><age>25</age><classroom><grade>2008</grade><id>1</id><name>08計算機應用技術</name></classroom><id>1</id><name>姚雙雙</name></student>
*/
/**
* unmarshal反編排,xml-->java
*/
@Test
public void test02() {
try {
//要轉換的xml
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><student><age>25</age><classroom><grade>2008</grade><id>1</id><name>08計算機應用技術</name></classroom><id>1</id><name>姚雙雙</name></student>";
//1.建立JAXBContext例項
JAXBContext ctx = JAXBContext.newInstance(Student.class);
//2.建立unmarshaller例項
Unmarshaller um = ctx.createUnmarshaller();
//3.讀入xml,並將xml-->java
Student student = (Student)um.unmarshal(new StringReader(xml));
//4.輸出
System.out.println(student.getName() + ", " + student.getClassroom().getName());
} catch (JAXBException e) {
e.printStackTrace();
}
}
/*
* 執行結果:姚雙雙, 08計算機應用技術
*
*/
}
相關文章
- 元件使用總結:使用 JAXB 實現 XML檔案和java物件互轉元件XMLJava物件
- jaxb解析xmlXML
- XML - JAXB示例XML
- java使用jaxb解析XML(含根據xml自動生成實體類)JavaXML
- Java 異常處理:使用和思考Java
- Java XML和JSON:Java SE的文件處理,第1部分JavaXMLJSON
- Java XML和JSON:Java SE的文件處理 第2部分JavaXMLJSON
- [轉]使用 SAX 處理 XML 文件 和與DOM的區別XML
- JAXB名稱空間及名稱空間字首處理
- jaxb輸出xml檔案的中文問題?XML
- Go xml檔案處理GoXML
- SAX處理XML例項XML
- xml處理的問題XML
- java 如何簡單快速處理 xml 中的資料JavaXML
- 使用 Grapicmagick 和 Im4java 處理圖片APIJava
- JAXB(一)——初體驗之實現XML和物件之間的對映XML物件
- JAXB解析xml時忽略名稱空間的方法XML
- Java 處理 XML 的三種主流技術及介紹JavaXML
- 使用xsl實時處理xml文件(Javascript語言)XMLJavaScript
- 使用JDOM處理XML資料之PDF篇(二) (轉)XML
- 使用JDOM處理XML資料之PDF篇(一) (轉)XML
- PHP處理XML的例項PHPXML
- 用JDOM處理XML文件 (轉)XML
- 使用Java處理大檔案Java
- 使用XML和Java混合控制UI頁面XMLJavaUI
- 利用ASP傳送和接收XML資料的處理方法XML
- 使用JDOM處理XML資料之XSLT篇(二) (轉)XML
- 使用JDOM處理XML資料之XSLT篇(一) (轉)XML
- 前端如何處理xml配置檔案?前端XML
- Sun如何處理PostgreSQL和Java DB?SQLJava
- Java異常處理和設計Java
- (Java)字串處理--equals()和equalsIgnoreCase()Java字串
- java中大數處理和高精度小數處理(so easy)Java
- java使用sax解析xmlJavaXML
- JSP筆記-XML 資料處理JS筆記XML
- 處理XML資料應用實踐XML
- SqlServer 2005處理xml格式 (轉)SQLServerXML
- Java中異常處理和設計Java