Hibernate映射枚举到varchar [英] Hibernate map enum to varchar

查看:134
本文介绍了Hibernate映射枚举到varchar的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我有这个枚举:

public enum TestEnum { EXAMPLE, FURTHER_EXAMPLE, LAST_EXAMPLE }

.hbm 中的此映射:

<property name="testEnum" column="TEST_COLUMN">
    <type name="org.hibernate.type.EnumType">
        <param name="enumClass">p.a.c.k.TestEnum</param>
    </type>
 </property>

枚举以 0发送到数据库 1 2 。我想要将值存储为 EXAMPLE FURTHER_EXAMPLE LAST_EXAMPLE 在varchar列中。

The enum is sent to the database as 0, 1, 2. I'd like the values to be instead stored as EXAMPLE, FURTHER_EXAMPLE or LAST_EXAMPLE in a varchar column.

如何将枚举映射到varchar列?

How can I map enum to a varchar column?

推荐答案

将其添加为EnumType的参数:

Add this as a parameter of EnumType:

<param name="type">12</param>

这是因为 12 相当于< a href =http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.sql.Types.VARCHAR> java.sql.Types.VARCHAR

这篇关于Hibernate映射枚举到varchar的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆