【问题标题】:How to represent a type table in hibernate如何在hibernate中表示类型表
【发布时间】:2012-03-25 11:18:07
【问题描述】:

我有两个表 agencyagency_type 代理机构引用了 agency_type_id agency_type 表有两个值 = individualcorporate 我看到一些示例用 Enum 表示类型表,这是这种情况下的最佳做法吗?这会为枚举创建一个数据库表吗?

【问题讨论】:

    标签: hibernate jakarta-ee orm enums


    【解决方案1】:

    我认为它可以只是 int(11) 类型的表机构中的一列,描述将是这样的:

        <class name="com....Agency" table="agency">
            ............
            <property name="agencyType" column="agency_type_id">
                <type name="org.hibernate.type.EnumType">
                    <param name="enumClass">com...AgencyType</param>
                </type>
            </property>
            .............
        </class>
    

    【讨论】:

    • 如果值的数量固定或很少更改(如个人、公司),那么 Enum 是最合适的 Java 类型。基本上,它甚至不是数据的一部分——它是代码的一部分。 Hibernate 提供了一种映射枚举的简单方法。这比使用带有几个值的单独表要简单得多。
    • 感谢您的帮助,能否请您提供带有注释的示例代码,而不是xml
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-31
    • 2021-02-09
    • 1970-01-01
    • 2021-05-07
    • 2011-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多