hibernate_part2_3

package cn.itcast.hibernate;

import java.util.Date;


import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import cn.itcast.hibernate.domain.User;

public class Base {
	public static void main(String[] args) {
		User user = new User();
		user.setBirthday(new Date());
		user.setName("hefl");
		
		addUser(user);
		
		User u = getUser(user.getId());
		System.out.println("name:"+u.getName());
		System.out.println("end");
		
	}
	
	static void addUser(User user){
		Session s = null;
		Transaction tx = null;
		try{
			s = HibernateUtil.getSession();
			tx = s.beginTransaction();
			s.save(user);
			tx.commit();
		}catch(HibernateException e){
			if(tx!=null)
				tx.rollback();
			throw e;//要對異常做處理
		}finally{
			if(s!=null)
				s.close();
		}
	}
	
	static void addUser1(User user){
		Session s = null;
		Transaction tx = null;
		try{
			s = HibernateUtil.getSession();
			tx = s.beginTransaction();
			s.save(user);
			tx.commit();//HB會自動對異常進行處理
		}finally{
			if(s!=null)
				s.close();
		}
	}
	
	static User getUser(int id){
		Session s = null;
		try{
			s = HibernateUtil.getSession();
			User user = (User)s.get(User.class, id);
			return user;
		}finally{
			if(s!=null)
				s.close();
		}
	}
}

發佈了73 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章