dboperation.java

来自「是Eclipse web开发从入门到精通的源码」· Java 代码 · 共 89 行

JAVA
89
字号
package library.test;

import java.util.List;

import library.hibernate.UserTable;
import library.main.HibernateUtil;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;

/**
 * 通过Hibernate访问数据库的插入、更新、删除和查询操作
 * 
 * @author lianhw
 * 
 */
public class DBOperation {

	/**
	 * 数据库的查询操作
	 * 
	 * @param hql
	 *            查询语句
	 * @return 查询返回的结果集
	 */
	public List select(String hql) {
		// 创建SessionFactory对象
		SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
		// 从会话工厂类中打开一个会话
		Session session = sessionFactory.openSession();
		// 创建一个事务
		Transaction tx = session.beginTransaction();
		// 执行查询操作
		Query userList = session.createQuery(hql);
		// 将查询结果放到一个列表中
		List list = userList.list();
		// 提交事务
		tx.commit();
		// 关闭会话
		session.close();
		// 返回结果
		return list;

	}

	/**
	 * 数据库的插入和更新操作
	 * 
	 * @param userTable
	 */
	public void saveOrUpdate(UserTable userTable) {
		// 创建SessionFactory对象
		SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
		// 从会话工厂类中打开一个会话
		Session session = sessionFactory.openSession();
		// 创建一个事务
		Transaction tx = session.beginTransaction();
		// 插入和更新操作
		session.saveOrUpdate(userTable);
		// 提交事务
		tx.commit();
		// 关闭会话
		session.close();
	}

	/**
	 * 数据库的删除操作
	 * 
	 * @param userTable
	 */
	public void delete(UserTable userTable) {
		// 创建SessionFactory对象
		SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
		// 从会话工厂类中打开一个会话
		Session session = sessionFactory.openSession();
		// 创建一个事务
		Transaction tx = session.beginTransaction();
		// 数据库的删除操作
		session.delete(userTable);
		// 提交事务
		tx.commit();
		// 关闭会话
		session.close();
	}

}

⌨️ 快捷键说明

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