java - 从 Hibernate hbm 到 JPA 注释,一个具有挑战性的任务

标签 java hibernate jpa

我已经为这个问题苦苦挣扎了一段时间了。它看起来比我想象的要简单得多:

    <join table="COTISATION_SYNCHRO" fetch="join" optional="true">
        <key column="COTISATION_SYNCHRO_COTISATION_ID_FK" on-delete="noaction"/>
        <property name="cotisationCoupon" type="java.lang.Long" update="true" insert="true">
            <column name="COTISATION_COUPON" not-null="true" unique="true"/>
        </property>
        <property name="synchroData" type="com.allence.opcapl.alpha2.common.model.synchro.SynchroDataType">
            <column name="LAST_ACCESS_LOCAL" not-null="true"/>
            <column name="LAST_UPDATE_LOCAL" not-null="true"/>
            <column name="LAST_ACCESS_REMOTE" not-null="true"/>
            <column name="LAST_UPDATE_REMOTE" not-null="true"/>
        </property>
    </join>

这包含在 COTISATION 表映射中,并使用 SynchroDataType,扩展了 Hibernate UserType

这确实很棒,但我找不到一种方法将其转换为正确的 JPA,同时保持其便利性。

有人有这种一对一映射的解决方案吗?

最佳答案

看看@Embedded注释来解决您的非实体对象 SynchroDataType@SecondaryTable处理 COTISATIONCOTISATION_SYNCHRO 之间的一对一映射。

关于java - 从 Hibernate hbm 到 JPA 注释,一个具有挑战性的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2918857/

相关文章:

spring - 是否可以使用 Java 配置而不是 persistence.xml 进行 Hibernate OGM 持久性设置?

java - 四舍五入到最接近的一百

java - 在数组列表中存储二叉搜索树

java - 为什么即使在 spring 服务类的第二种方法中 propagation=Propagation.REQUIRES_NEW 时事务也会回滚?

java - 如何在 Hibernate 4 实体上设置事件监听器?

java - JPA 不坚持我的类(class)

java - 使用 Maven 如何仅使用一个不同的 .java 文件构建 Java 项目的两个版本?

java - 未知主机异常

java - "No Persistence provider for EntityManager"错误

java - @ManyToOne JPA 关联和级联...不确定如果我删除一个对象会发生什么