import javax.xml.bind.annotation.*;
@XmlRootElement
public class Student {
private int id;
private String name;
private int age;
// Getter and Setter methods
@XmlElement
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@XmlElement
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@XmlElement
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
import javax.xml.bind.*;
public class XMLGenerator {
public static void main(String[] args) throws JAXBException {
// Create a student object
Student student = new Student();
student.setId(1);
student.setName("John");
student.setAge(20);
// Create JAXBContext
JAXBContext context = JAXBContext.newInstance(Student.class);
// Create Marshaller
Marshaller marshaller = context.createMarshaller();
// Set the output format
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
// Generate XML
marshaller.marshal(student, System.out);
}
}
import javax.xml.bind.*;
public class XMLParser {
public static void main(String[] args) throws JAXBException {
// Create JAXBContext
JAXBContext context = JAXBContext.newInstance(Student.class);
// Create Unmarshaller
Unmarshaller unmarshaller = context.createUnmarshaller();
// Parse XML
Student student = (Student) unmarshaller.unmarshal(XMLParser.class.getResourceAsStream("student.xml"));
// Print student information
System.out.println("ID: " + student.getId());
System.out.println("Name: " + student.getName());
System.out.println("Age: " + student.getAge());
}
}
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>