自动为@Embeddable类的列名添加前缀

10 浏览
0 Comments

自动为@Embeddable类的列名添加前缀

我正在开发一个项目,通过添加Hibernate注解来持久化一些POJO。我遇到的一个问题是,像这样的代码会失败,因为Hibernate试图将Time_T中的子字段映射到同一列(即startTime.secstopTime.sec都试图映射到列sec,导致错误)。

@Entity
public class ExampleClass
{
  @Id
  long eventId;
  Time_T startTime;
  Time_T stopTime;
}
@Embeddable
public class Time_T
{
  int sec;
  int nsec;
}

由于系统中将会有许多类似的情况,如果能够自动在列名后面添加前缀(例如使列名变为startTime_secstartTime_nsecstopTime_secstopTime_nsec),而不必每个字段都应用覆盖,那将会很好。Hibernate是否具备这个功能,或者是否有其他合理的解决方案?

0