JAXB tạo ra phương pháp nhà máy mà tạo ra một JAXBElement từ một trường hợp đối tượng chỉ khi XSD của bạn chứa cả một định nghĩa complexType và một định nghĩa yếu tố riêng biệt sử dụng complexType rằng có cùng tên, ví dụ:
<complexType name="my-type">
...
</complexType>
<element name="my-type" type="tns:my-type"/>
Trong này trường hợp, JAXB sẽ không chú thích lớp đã tạo với chú thích @XmlRootElement, nhưng sẽ cung cấp các phương thức factory bạn cần để tạo một JAXBElement từ cá thể đối tượng. Bằng cách đó, bạn có thể tuần tự hóa các thể hiện của các kiểu phần tử không phải là phần tử gốc như các phần tử gốc một cách dễ dàng. Vì vậy, bạn chỉ cần thêm một "phần tử" -declaration có cùng tên, thêm vào bất kỳ định nghĩa complexType nào bạn định sử dụng làm phần tử cấp cao nhất, và ObjectFactory sẽ tạo ra các phương thức nhà máy dự kiến.
Nguồn
2014-01-07 13:53:56