com.jalios.jcms.db
Class GenericEnumUserType
java.lang.Object
com.jalios.jcms.db.GenericEnumUserType
- All Implemented Interfaces:
- org.hibernate.usertype.ParameterizedType, org.hibernate.usertype.UserType
public class GenericEnumUserType
- extends Object
- implements org.hibernate.usertype.UserType, org.hibernate.usertype.ParameterizedType
If you need to map Java 5 Enums to Hibernate using JPA annotations this is what you are looking for.
Example:
<hibernate-mapping>
<typedef name="documentTypeEnum" class="com.jalios.jcms.db.GenericEnumUserType">
<param name="enumClass">com.jalios.jcmsplugin.myplugin.DocumentType</param>
<!--<param name="identifierMethod">toInt</param>--> <!--default: name-->
<!--<param name="valueOfMethod">fromInt</param>--> <!--default: valueOf-->
</typedef>
...
<property name="documentType" type="documentTypeEnum" />
<hibernate-mapping>
- See Also:
- https://community.jboss.org/wiki/Java5EnumUserType,
http://desgeeksetdeslettres.com/blog/programmation-java/hibernate-une-facon-generique-de-persister-les-enum
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
GenericEnumUserType
public GenericEnumUserType()
setParameterValues
public void setParameterValues(Properties parameters)
- Specified by:
setParameterValues
in interface org.hibernate.usertype.ParameterizedType
returnedClass
public Class returnedClass()
- Specified by:
returnedClass
in interface org.hibernate.usertype.UserType
nullSafeGet
public Object nullSafeGet(ResultSet rs,
String[] names,
Object owner)
throws org.hibernate.HibernateException,
SQLException
- Specified by:
nullSafeGet
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
SQLException
nullSafeSet
public void nullSafeSet(PreparedStatement st,
Object value,
int index)
throws org.hibernate.HibernateException,
SQLException
- Specified by:
nullSafeSet
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
SQLException
sqlTypes
public int[] sqlTypes()
- Specified by:
sqlTypes
in interface org.hibernate.usertype.UserType
assemble
public Object assemble(Serializable cached,
Object owner)
throws org.hibernate.HibernateException
- Specified by:
assemble
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
deepCopy
public Object deepCopy(Object value)
throws org.hibernate.HibernateException
- Specified by:
deepCopy
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
disassemble
public Serializable disassemble(Object value)
throws org.hibernate.HibernateException
- Specified by:
disassemble
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
equals
public boolean equals(Object x,
Object y)
throws org.hibernate.HibernateException
- Specified by:
equals
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
hashCode
public int hashCode(Object x)
throws org.hibernate.HibernateException
- Specified by:
hashCode
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
isMutable
public boolean isMutable()
- Specified by:
isMutable
in interface org.hibernate.usertype.UserType
replace
public Object replace(Object original,
Object target,
Object owner)
throws org.hibernate.HibernateException
- Specified by:
replace
in interface org.hibernate.usertype.UserType
- Throws:
org.hibernate.HibernateException
Copyright © 2001-2010 Jalios SA. All Rights Reserved.