栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Hibernate-如何映射EnumSet

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Hibernate-如何映射EnumSet

我使用EnumSet映射线程中的解决方案,该解决方案依赖于的使用

<elementcolumn>
。您只需要一个具有ID和字符串的表即可映射集合(
MYENTITY_COLOR
此处)。映射看起来像这样(这
EnumUserType
是Java
5
EnumUserType中的映射
):

<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping>    <typedef name="color" >        <param name="enumClassName">com.stackoverflow.q2402869.Color</param>    </typedef>    <class name="com.stackoverflow.q2402869.MyEntity" entity-name="MyEntity" table="MYENTITY">        <id name="id" type="java.lang.Long"> <column name="ID" /> <generator  />        </id>        <set name="colors" table="MYENTITY_COLORS"> <key column="ID" not-null="true"/> <element type="color" column="COLOR"/>        </set>    </class></hibernate-mapping>

查询可能如下所示:

select distinct e from MyEntity e join e.colors colors where colors IN ('WHITE', 'GREEN')

整个解决方案可 很好地用于加载,保存和查询 (归于jasonab)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/412934.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号