hibernate mysql list index_Hibernate映射自定义数据类型

packagecn.blogjava.usertype;importjava.util.ArrayList;importjava.util.List;importjunit.framework.Assert;importjunit.framework.TestCase;importorg.hibernate.HibernateException;importorg.hibernate.Session;importorg.hibernate.SessionFactory;importorg.hibernate.Transaction;importorg.hibernate.cfg.Configuration;publicclassHibernateTestextendsTestCase {

Session session=null;/*** JUnit中的setUp方法在TestCase初始化的时候会自动调用

* 一般用于初始化公用资源*/protectedvoidsetUp() {try{/*** 可以采用hibernate.properties或者hibernate.cfg.xml

* 配置文件的初始化代码

*

* 采用hibernate.properties

* Configuration config = new Configuration();

* config.addClass(TUser.class);*///采用hibernate.cfg.xml配置文件,与上面的方法对比,两个差异//1.Configuration的初始化方式//2.xmlConfiguration config=newConfiguration().configure();

SessionFactory sessionFactory=config.buildSessionFactory();

session=sessionFactory.openSession();

}catch(HibernateException e) {//TODO: handle exceptione.printStackTrace();

}

}/*** JUnit中的tearDown方法在TestCase执行完毕的时候会自动调用

* 一般用于释放资源*/protectedvoidtearDown() {try{

session.close();

}catch(HibernateException e) {//TODO: handle exceptione.printStackTrace();

}

}/*** 对象持久化测试(Insert方法)*/publicvoidtestInsert() {

Transaction tran=null;try{

tran=session.beginTransaction();

TUserMail user=newTUserMail();

user.setName("byf");

List list=newArrayList();

list.add("baiyf@msn.com");

list.add("bexy@163.com");

user.setEmail(list);

session.save(user);

session.flush();

tran.commit();

Assert.assertEquals(user.getId().intValue()>0,true);

}catch(HibernateException e) {//TODO: handle exceptione.printStackTrace();

Assert.fail(e.getMessage());if(tran!=null) {try{

tran.rollback();

}catch(Exception e1) {//TODO: handle exceptione1.printStackTrace();

}

}

}

}/*** 对象读取测试(Select方法)*/publicvoidtestSelect(){

String hql="from TUserMail where name='byf'";try{

List userList=session.createQuery(hql).list();

TUserMail user=(TUserMail)userList.get(0);

List mailList=user.getEmail();

Assert.assertEquals((String)mailList.get(0),"baiyf@msn.com");

Assert.assertEquals((String)mailList.get(1),"bexy@163.com");

}catch(Exception e) {//TODO: handle exceptione.printStackTrace();

Assert.fail(e.getMessage());

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值