yeg*_*256 2 java hibernate jpa
我的自定义类型是(没有默认构造函数!):
package com.XXX.common;
public class Email implements Serializable {
private String e;
public Email(String str) {
e = str;
}
}
Run Code Online (Sandbox Code Playgroud)
我在Hibernate 3.5.6中的实体:
package com.XXX.persistence;
import com.XXX.common;
@Entity
@TypeDef(
name = "email",
defaultForType = Email.class,
typeClass = Email.class
)
public class User {
@Id private Integer id;
@Type(type = "email")
private Email email;
}
Run Code Online (Sandbox Code Playgroud)
Hibernate说:
org.hibernate.MappingException: Could not determine type for:
com.XXX.common.Email, at table: user, for columns:
[org.hibernate.mapping.Column(email)]
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我的自定义类型是(没有默认构造函数!)(...)
自定义类型必须实现其中一个接口org.hibernate.usertype(实现UserType对于您的特定示例就足够了),您的Email类不是自定义类型.换句话说,您需要创建一些EmailTypeHibernate将用于持久化字段或类型属性的类Email.
PS:有一个IMO没有太大的价值, String但是让我们说这是一个例子.
| 归档时间: |
|
| 查看次数: |
4632 次 |
| 最近记录: |