xml tutorials

This commit is contained in:
sxyx2008
2014-07-09 11:07:27 +08:00
parent cafa386420
commit 78e6dd27fc
48 changed files with 2741 additions and 2 deletions
+19
View File
@@ -0,0 +1,19 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>net.aimeizi</groupId>
<artifactId>xml-tutorials</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>xml-jaxb-example</artifactId>
<packaging>jar</packaging>
<dependencies>
<dependency>
<artifactId>junit</artifactId>
<groupId>junit</groupId>
<version>4.6</version>
</dependency>
</dependencies>
</project>
@@ -0,0 +1,45 @@
package net.aimeizi.jaxb.marshaller.example;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import net.aimeizi.jaxb.model.example.ClassRoom;
import net.aimeizi.jaxb.model.example.Student;
import org.junit.Test;
public class JaxbMarshaller {
@Test
public void student2xml() throws JAXBException{
JAXBContext context=JAXBContext.newInstance(Student.class);
Student student=new Student("admin", 18, "陕西西安", new ClassRoom("classroom", "三年二班"));
Marshaller marshaller = context.createMarshaller();
//設置不輸出<?xml version="1.0" encoding="UTF-8" standalone="yes"?>信息
//marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);
marshaller.marshal(student, System.out);
}
@Test
public void classroom2xml() throws JAXBException{
JAXBContext context=JAXBContext.newInstance(Student.class);
ClassRoom classRoom=new ClassRoom("classroom", "三年二班");
Student student;
List<Student> students=new ArrayList<Student>();
for (int i = 1; i <= 10; i++) {
student=new Student("admin", 18, "陕西西安");
students.add(student);
}
classRoom.setStudents(students);
Marshaller marshaller = context.createMarshaller();
marshaller.marshal(classRoom, System.out);
}
}
@@ -0,0 +1,70 @@
package net.aimeizi.jaxb.model.example;
import java.util.List;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name="classRoom")
public class ClassRoom {
private String classroomid;
private String classroomname;
private List<Student> students;
public ClassRoom() {
}
public ClassRoom(String classroomid, String classroomname) {
super();
this.classroomid = classroomid;
this.classroomname = classroomname;
}
public ClassRoom(String classroomid, String classroomname,
List<Student> students) {
super();
this.classroomid = classroomid;
this.classroomname = classroomname;
this.students = students;
}
public String getClassroomid() {
return classroomid;
}
@XmlAttribute
public void setClassroomid(String classroomid) {
this.classroomid = classroomid;
}
public String getClassroomname() {
return classroomname;
}
@XmlAttribute
public void setClassroomname(String classroomname) {
this.classroomname = classroomname;
}
public List<Student> getStudents() {
return students;
}
@XmlElement(name="student")
public void setStudents(List<Student> students) {
this.students = students;
}
@Override
public String toString() {
return "ClassRoom [classroomid=" + classroomid + ", classroomname="
+ classroomname +"]";
}
}
@@ -0,0 +1,74 @@
package net.aimeizi.jaxb.model.example;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name="student")
public class Student {
private String stuname;
private int age;
private String stuaddress;
private ClassRoom room;
public Student() {
}
public Student(String stuname, int age, String stuaddress, ClassRoom room) {
super();
this.stuname = stuname;
this.age = age;
this.stuaddress = stuaddress;
this.room = room;
}
public Student(String stuname, int age, String stuaddress) {
super();
this.stuname = stuname;
this.age = age;
this.stuaddress = stuaddress;
}
public String getStuname() {
return stuname;
}
public void setStuname(String stuname) {
this.stuname = stuname;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getStuaddress() {
return stuaddress;
}
public void setStuaddress(String stuaddress) {
this.stuaddress = stuaddress;
}
public ClassRoom getRoom() {
return room;
}
@XmlElementRef(name="classRoom")
public void setRoom(ClassRoom room) {
this.room = room;
}
@Override
public String toString() {
return "Student [stuname=" + stuname + ", age=" + age + ", stuaddress="
+ stuaddress + ", classroomid=" + room.getClassroomid() + ", classroomname=" + room.getClassroomname()+"]";
}
}
@@ -0,0 +1,35 @@
package net.aimeizi.jaxb.unmarshaller.example;
import java.io.StringReader;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import net.aimeizi.jaxb.model.example.ClassRoom;
import net.aimeizi.jaxb.model.example.Student;
import org.junit.Test;
public class JaxbUnMarshaller {
@Test
public void xml2student() throws JAXBException{
String str="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><student><age>18</age><classRoom classroomid=\"classroom\" classroomname=\"三年二班\"/><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student>";
JAXBContext context=JAXBContext.newInstance(Student.class);
Unmarshaller unmarshaller = context.createUnmarshaller();
Student student = (Student) unmarshaller.unmarshal(new StringReader(str));
System.out.println(student);
}
@Test
public void xml2classroom() throws JAXBException{
String str="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><classRoom classroomid=\"classroom\" classroomname=\"三年二班\"><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student><student><age>18</age><stuaddress>陕西西安</stuaddress><stuname>admin</stuname></student></classRoom>";
JAXBContext context=JAXBContext.newInstance(ClassRoom.class);
Unmarshaller unmarshaller = context.createUnmarshaller();
ClassRoom room = (ClassRoom) unmarshaller.unmarshal(new StringReader(str));
System.out.println(room);
}
}
@@ -0,0 +1,503 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classRoom classroomid="classroom" classroomname="三年二班">
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
<student>
<age>18</age>
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>
</classRoom>
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<student>
<age>18</age>
<classRoom classroomid="classroom" classroomname="三年二班" />
<stuaddress>陕西西安</stuaddress>
<stuname>admin</stuname>
</student>