⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userinfoservice.java

📁 Hibernate的精典实例
💻 JAVA
字号:
package hibernate.demo;

import java.util.List;

import net.sf.hibernate.Hibernate;
import net.sf.hibernate.Session;
import net.sf.hibernate.SessionFactory;
import net.sf.hibernate.Transaction;
import net.sf.hibernate.cfg.Configuration;

public class UserInfoService {
	private static SessionFactory sf = null;

	static {
		try {
			Configuration config = new Configuration();
			config.addClass(UserInfo_Pojo.class);
			sf = config.buildSessionFactory();
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}

	public void saveUserInfo() throws Exception {
		Session session = null;
		Transaction tx = null;
		try {
			session = sf.openSession();
			// 事务开始
			tx = session.beginTransaction();
			UserInfo_Pojo userInfo = new UserInfo_Pojo();
			userInfo.setUserName("hibernate");
			session.save(userInfo);
			tx.commit();
		} catch (Exception ex) {
			tx.rollback();
		} finally {
			session.close();
		}
	}

	public void deleteUserInfo() throws Exception {
		Session session = null;
		Transaction tx = null;
		try {
			session = sf.openSession();
			// 事务开始
			tx = session.beginTransaction();
			UserInfo_Pojo userInfo = (UserInfo_Pojo) session.get(
					UserInfo_Pojo.class, new Integer(1));
			session.delete(userInfo);
			tx.commit();
		} catch (Exception ex) {
			tx.rollback();
		} finally {
			session.close();
		}
	}

	public void updateUserInfo(Integer pk, String newName) throws Exception {
		Session session = null;
		Transaction tx = null;
		try {
			session = sf.openSession();
			// 事务开始
			tx = session.beginTransaction();
			UserInfo_Pojo userInfo = (UserInfo_Pojo) session.get(
					UserInfo_Pojo.class, pk);
			userInfo.setUserName(newName);
			tx.commit();
		} catch (Exception ex) {
			tx.rollback();
		} finally {
			session.close();
		}
	}

	// 查询
	public UserInfo_Pojo queryUserInfo(String newName) throws Exception {
		Session session = null;
		Transaction tx = null;
		UserInfo_Pojo userinfo = null;
		try {
			session = sf.openSession();
			// 事务开始
			tx = session.beginTransaction();
			List lstUser = session
					.find("from UserInfo_Pojo user where user.userName='"
							+ newName + "'");
			userinfo = (UserInfo_Pojo) lstUser.get(0);

			tx.commit();
		} catch (Exception ex) {
			tx.rollback();
		} finally {
			session.close();
		}
		return userinfo;
	}

	// 立即检索(class元素lazy属性为false)

	public UserInfo_Pojo queryUserInfoByPk(Integer pk) throws Exception {
		Session session = null;
		Transaction tx = null;
		UserInfo_Pojo userinfo = null;
		try {
			session = sf.openSession();
			// 事务开始
			tx = session.beginTransaction();

			userinfo = (UserInfo_Pojo) session.load(UserInfo_Pojo.class, pk);
			//完成代理对象的初始化
			//String userName=userinfo.getUserName();
			//不能完成初始化(主键字段)
			//userinfo.getUserId();
			//Hibernate方法
			if(!Hibernate.isInitialized(userinfo)){
				Hibernate.initialize(userinfo);
			}
			//System.out.println("userName :"+userinfo.getUserName());
			tx.commit();
		} catch (Exception ex) {
			tx.rollback();
		} finally {
			session.close();
		}
		return userinfo;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {

		UserInfoService service = new UserInfoService();
		UserInfo_Pojo user=service.queryUserInfoByPk(new Integer(2));
		
		//service.saveUserInfo();
		// service.deleteUserInfo();
		// UserInfo_Pojo pojo=service.queryUserInfo("18");

		// service.updateUserInfo(new Integer(1), "newName");

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -