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 | package com.xml; import java.math.BigDecimal; import org.springframework.core.style.ToStringStyler; public class Employee { private String name; private String type; private int age; private BigDecimal salary; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getType() { return type; } public void setType(String type) { this.type = type; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public BigDecimal getSalary() { return salary; } public void setSalary(BigDecimal salary) { this.salary = salary; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("name=" + name); sb.append("\n"); if(type != null) { sb.append("type=" + type + "\n"); } sb.append("age=" + age); return sb.toString(); } } |
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 | package com.xml; import java.io.StringWriter; import java.math.BigDecimal; import javax.xml.stream.XMLOutputFactory; import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamWriter; public class StaxProcessing { public static void main(String[] args) { XMLOutputFactory factory = XMLOutputFactory.newInstance(); // construct employee object Employee emp = new Employee(); emp.setName("Peter"); emp.setType("first"); emp.setAge(25); emp.setSalary(BigDecimal.valueOf(35000.00)); StringWriter sw = new StringWriter(); try { XMLStreamWriter writer = factory.createXMLStreamWriter(sw); writer.writeStartDocument(); writer.writeStartElement("Employee"); writer.writeStartElement("name"); writer.writeAttribute("type", "first"); writer.writeCharacters(emp.getName()); writer.writeEndElement(); writer.writeStartElement("age"); writer.writeCharacters(new Integer(emp.getAge()).toString()); writer.writeEndElement(); writer.writeStartElement("salary"); writer.writeCharacters(emp.getSalary().toString()); writer.writeEndElement(); writer.writeEndElement(); System.out.println(sw.getBuffer().toString()); } catch (XMLStreamException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } |
1 2 3 | <?xml version="1.0" ?> <Employee><name type="first">Peter</name><age>25</age><salary>35000.0</salary></Employee> |
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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | package com.xml; import java.io.StringWriter; import java.math.BigDecimal; import javax.xml.stream.XMLEventFactory; import javax.xml.stream.XMLEventWriter; import javax.xml.stream.XMLOutputFactory; import javax.xml.stream.XMLStreamException; import javax.xml.stream.events.XMLEvent; public class StaxProcessing { public static void main(String[] args) { XMLOutputFactory factory = XMLOutputFactory.newInstance(); XMLEventFactory eventFactory = XMLEventFactory.newInstance(); // construct employee object Employee emp = new Employee(); emp.setName("Peter"); emp.setType("first"); emp.setAge(25); emp.setSalary(BigDecimal.valueOf(35000.00)); StringWriter sw = new StringWriter(); try { XMLEventWriter writer = factory.createXMLEventWriter(sw); XMLEvent event = eventFactory.createStartDocument(); writer.add(event); // employee event = eventFactory.createStartElement("", "", "Employee"); writer.add(event); // name event = eventFactory.createStartElement("", "", "name"); writer.add(event); event = eventFactory.createAttribute("type", "first"); writer.add(event); event = eventFactory.createCharacters(emp.getName()); writer.add(event); event = eventFactory.createEndElement("", "", "name"); writer.add(event); // age event = eventFactory.createStartElement("", "", "age"); writer.add(event); event = eventFactory.createCharacters(new Integer(emp.getAge()).toString()); writer.add(event); event = eventFactory.createEndElement("", "", "age"); writer.add(event); // salary event = eventFactory.createStartElement("", "", "salary"); writer.add(event); event = eventFactory.createCharacters(emp.getSalary().toString()); writer.add(event); event = eventFactory.createEndElement("", "", "salary"); writer.add(event); // close employee event = eventFactory.createEndElement("", "", "Employee"); writer.add(event); writer.flush(); writer.close(); System.out.println(sw.getBuffer().toString()); } catch (XMLStreamException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } |
1 2 3 | <?xml version="1.0" ?> <Employee><name type="first">Peter</name><age>25</age><salary>35000.0</salary></Employee> |