在hibernate的jar包下游junit的包,使用junit的步骤:

1,建一个与src平行的包test

2,在该包下建立测试类,该类继承TestCase并且在该类中写测试方法,测试方法以test开头。测试方法不能含有参数和返回值。

实例代码:

package com.jzq.hibernate;

import junit.framework.TestCase;

public class SessionTest extends TestCase {

 public void testHello()
 {
  System.out.println("-----------sessionTest.testHello1()------");
 }
 public void testHello2()
 {
  System.out.println("-----------sessionTest.testHello2()------");
 }
}

然后再该类中运行junit即可,或者在视图中使用junit运行某些方法,或某个方法。

package com.jzq.hibernate;

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.Transaction;

import junit.framework.TestCase;

public class SessionTest extends TestCase {

 public void testHello()
 {
  System.out.println("-----------sessionTest.testHello1()------");
 }
 public void testHello2()
 {
  System.out.println("-----------sessionTest.testHello2()------");
 }
 public void testSave1()
 {
  Session session=null;
  User user=null;
  try {
   session = HibernateUtils.getSession();
   session.beginTransaction();
   
   //对象的瞬时状态
   user=new User();
   user.setName("李四");
   user.setPassword("123");
   user.setCreateTime(new Date());
   user.setExpireTime(new Date());
   
   //持久状态
   session.save(user);
   
   //对象修改后数据库也修改,hibernate自动与数据库同步
   user.setName("c10");
   
   session.getTransaction().commit();
  } catch (Exception e) {

   e.printStackTrace();
   session.getTransaction().rollback();
  }
  finally
  {
      HibernateUtils.closeSession(session); 
  }
  //此时user对象为离线状态
  
  //离线的user对象更新变为持久化对象
  user.setName("踩踩");
  Transaction tx=null;
  try {
   session = HibernateUtils.getSession();
   tx=session.beginTransaction();
   session.save(user);
   tx.commit();
  } catch (Exception e) {
            e.printStackTrace();
            tx.rollback();
  }
  finally
  {
      HibernateUtils.closeSession(session); 
        }
 }
 
 public void testReadByGet()
 {
  Session session=null;
  try {
   session = HibernateUtils.getSession();
   //加载一个user对象,对象成为持久化对象
   User user = (User) session.get(User.class,
     "402881ec2e2e942d012e2e942e920001");
   session.getTransaction().commit();
  } catch (Exception e) {
            e.printStackTrace();
            session.getTransaction().rollback();
  }
  finally
  {
   HibernateUtils.closeSession(session);
  }
 }
 
}

posted on 2011-02-16 19:40  魔战  阅读(327)  评论(0编辑  收藏  举报