[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-3075) Should be possible to register UserTypes for known property types (classes) in configuration
Andreas Joseph Krogh (JIRA)
noreply at atlassian.com
Mon May 31 08:50:56 EDT 2010
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3075?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=37305#action_37305 ]
Andreas Joseph Krogh commented on HHH-3075:
-------------------------------------------
I cannot see how this issue is resolved. How is it possible to specify what Martin originally suggested?:
{code}
<mappable-type class="org.joda.time.DateTime" usertype="org.joda.time.hibernate.DateTimeType"/>
{code}
The point is to be able to register a mapping which expresses "All instances of class=org.joda.time.DateTime should be mapped using mapperclass=org.joda.time.hibernate.DateTimeType"
Or is this possible now and it's only me not getting it?
> Should be possible to register UserTypes for known property types (classes) in configuration
> --------------------------------------------------------------------------------------------
>
> Key: HHH-3075
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3075
> Project: Hibernate Core
> Issue Type: Improvement
> Components: core
> Environment: n/a
> Reporter: Martin Probst
> Assignee: Diego Plentz
> Priority: Minor
>
> Currently, when persisting primitive properties of a class that are not known to Hibernate, there are only cumbersome ways to tell Hibernate that a certain UserType should be used. Good example is Joda Time:
> <pre>
> @Entity
> class MyClass {
> org.joda.time.DateTime foo;
> }
> </pre>
> .. which will result in ugly binary fields in database. Next try:
> <pre>
> @Entity
> class MyClass {
> @Type(type = "org.joda.time.contrib.hibernate.PersistentDateTime")
> org.joda.time.DateTime foo;
> }
> </pre>
> That works, but now I have to specify that on all time fields of all classes. Plus it's different types for different classes, which makes it more messy. And it's simply a string in code, so it's fragile to refactoring, code move, etc. TypeDefs allow a shorter handle for certain types, but don't really address the refactoring issues.
> A better way might be to allow configurations to register UserTypes for known classes. E.g. have a configuration directive like this:
> <mappable-type class="org.joda.time.DateTime" usertype="org.joda.time.hibernate.DateTimeType"/>
> This would allow the classes to stay clean from type mappings and reduce coupling between domain objects and persistence mapping.
> This might be as easy as allowing the org.hibernate.type.TypeFactory map to be extended at configuration time.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list