读书人

Hibernate照射自定义数据类型

发布时间: 2012-07-24 17:47:58 作者: rapoo

Hibernate映射自定义数据类型

数据库中存在一个email字段,并允许其中存储多个email地址,各地址之间使用 ; 分割,但是在POJO中,为了便于处理,email定义为一个List对象。
如何将String字段映射为List类型,Hibernate并没有提供原生支持,需要我们实现自己的UserType。
1.数据库定义

?

4.在hibernate.cfg.xml载入TUser.hbm.xml

?

5.测试类HibernateTest.java

?

6.TUser类

package tuser;import java.io.Serializable;import java.util.List;public class TUser implements Serializable {private static final long serialVersionUID = 1901560971512450430L;private Integer id;private String name;private Integer age;private List email;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public List getEmail() {return email;}public void setEmail(List email) {this.email = email;}}

?

运行测试代码,观察数据库中,可以发现email地址信息已经以";"分隔的形式保存。同时,在数据读取时,我们也无需面对原始的";"分隔字符串,转而只需要处理List类型数据即可。

读书人网 >其他数据库

热点推荐