Java Hibernate วิธีการ Mapping Oracle to_char
ปรกติเวลา Mapping Field Hibernate โดยใช้ Annotations
จะประกรอบด้วย @Id , @Column ที่เป็น Field จริงใน database
@Id
@Column(name = "code_id")
private int codeId;
@Column(name = "test_name")
private String testName;
@Column(name = "test_date")
private Date testDate;
แต่ถ้าหากเราต้องการ Field ซัก field ที่ใช้ในกรณี Query
โดยใส่ function ของ Oracle ครอบซึ่งเป็น field ที่ไม่มีอยู่จริงใน table
สามารถใช้ Annotations @Formula ได้ เช่น
@Formula(" to_char(test_date,'dd/mm/yyyy') ")
private String testDateStr;
ประมาณนี้ครับ แล้วก็สร้าง method พวก get ,set ให้ field นี้ด้วยนะ
วิธีนี้ดีตรงที่จะมีผลกับการ Query เท่านั้น ไม่มีผลกับตอน Save เพราะไม่ได้ mapping field เป็น Column ใน database จริง