2012-10-04 66 views
0

我有一個requeiremnt,即,我有多個常量來維護數據庫表。如果用戶想要更改,那些常量值可以完成。所以我需要的確切,我想枚舉這些常量數據使用hibernate.So,什麼是最好的解決方案中使用枚舉映射與休眠或代替枚舉是有這個requeiremnt在hibernate.If任何不對的需求量的遺憾如何使用hibernate中的枚舉映射表?

回答

1

如果你打算使用JPA check this

任何可能的方式如果您計劃要使用沒有JPA的hibernate,hibernate提供了org.hibernate.type.EnumType來映射枚舉類型。例如,

package com.igalia.enumerates; 

public enum Status { 
    BUSY, 
    AVAILABLE; 
} 

package com.igalia.entities; 

class MyClass { 
    private Status status; 
} 

然後,做你的Hibernate映射如下:

<class name="MyClass"> 
    <id name="id"> 
     <generator class="native"/> 
    </id> 

    <property name="status"> 
     <type name="org.hibernate.type.EnumType"> 
     <param name="enumClass">com.igalia.enumerates.Status</param> 
     </type> 
    </property> 
</class> 
+0

Thanks.In MyEnum類有哪些表列的需要枚舉,然後在這個配置property.is是正確的。所以,如果?任何用戶修改表數據都會影響到這個枚舉類也是。是不是? – user1357722

+0

我已經更新了我的解決方案,也許現在應該更清楚了! – Anshu

+0

是的,它的權利 – user1357722