Tôi có một bảng GameCycle
trong một db chứa một cột date
loại number
. Các giá trị trong cột này là các số có 8 chữ số đại diện cho một ngày ngược lại như '20130301
'. Ánh xạ lên bảng này tôi có một lớp GameCycle
chứa một trường được bảo vệ iDate loại java.util.Date
. Trường đó được chú thích '@Type(type = "inverseDate")
', sử dụng ánh xạ loại tùy chỉnh. Lớp Gamecycle
được chú thích với '@TypeDef(name = "inverseDate", typeClass = InverseDateType.class)
'jpa tùy chỉnh loại ánh xạ độc lập/javax.persistence.x thay thế cho org.hibernate.annotations.Type và org.hibernate.annotations.TypeDef
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
@Entity
@TypeDef(name = "inverseDate", typeClass = InverseDateType.class)
@Table(name = "GAMECYCLE")
public class GameCycle implements Comparable<GameCycle>, Serializable
{
@Type(type = "inverseDate")
@Column(name = "GC_DATE", nullable = false)
protected Date iDate = null;
...
Rõ ràng, nhập khẩu bind tôi để sử dụng chế độ ngủ đông như một thực hiện JPA vì vậy câu hỏi của tôi là:
Có cách nào để thoát khỏi các chú thích hibernate và làm cùng một ánh xạ kiểu tùy chỉnh bằng giải pháp tinh khiết javax.persistence
?
Quá xấu, tôi đã nghi ngờ rằng giải pháp duy nhất bên cạnh bị ràng buộc vào một thực hiện sẽ có một số chuyển đổi trong getters/setters. Cảm ơn bạn cho câu trả lời nhanh chóng mặc dù. – tyler