2011-02-02 44 views
11

Có một số cách để tạo phương thức tùy chỉnh trong lớp được tạo bằng JAXB.Tạo phương thức tùy chỉnh bổ sung bằng jaxb-xjc

Tôi tìm kiếm xung quanh các hướng dẫn, bao gồm hướng dẫn của oracle, nhưng tôi không tìm thấy hướng dẫn rõ ràng làm cách nào tôi có thể tùy chỉnh phương thức cho lớp được tạo được mô tả trên Lược đồ XML.

Trả lời

6
+0

Tuyệt vời! Tôi nghĩ rằng đó là chính xác những gì tôi đang tìm kiếm ... Tôi sẽ thử nó và bình luận ở đây về kết quả! Cảm ơn! – apast

+0

Tôi đã sử dụng việc triển khai Mã tiêm hiện có, chính xác như đã mô tả trên bài viết. Nó hoạt động như tôi mong đợi. Cảm ơn! – apast

+0

bài viết dường như cũ. Có cách nào mới nâng cao để làm tương tự? – ulab

7

tôi đã tìm thấy những điều sau đây là cách tốt nhất để thêm hành vi tùy chỉnh:

http://jaxb.java.net/guide/Adding_behaviors.html

Bạn có thể thực hiện hành vi tùy chỉnh cho lớp cơ sở JAXB được tạo ra trong lớp cơ sở tùy chỉnh BaseTypeExt mở rộng s lớp cơ sở JAXB được tạo ra BaseType.

Bạn cũng yêu cầu JAXB sử dụng lớp BaseTypeExt mở rộng của bạn (thay vì lớp BaseType nó mở rộng) làm lớp cơ sở cho tất cả các lớp thường sẽ mở rộng lớp BaseType.

Tôi đã sử dụng thành công này để ghi đè phương thức toString() trong lớp BaseType đã tạo.

Điều này có vẻ đơn giản hơn việc viết một plugin XJC.

Các vấn đề liên quan