您好,欢迎来到百果情感网。
搜索
您的当前位置:首页Hibernate实现最基本的增删改查

Hibernate实现最基本的增删改查

来源:百果情感网


Hibernate提供了丰富的API对数据库进行操作。 其中Session是对数据库进行操作一个非常重要的类,他提供了对数据库增删改查的基本操作。 下面看一些具体示例,实例中实现了对数据库增加,删除,更新,根据ID查询,查询全部,分页查询,以及模糊查询 package d

Hibernate提供了丰富的API对数据库进行操作。

其中Session是对数据库进行操作一个非常重要的类,他提供了对数据库增删改查的基本操作。

下面看一些具体示例,实例中实现了对数据库增加,删除,更新,根据ID查询,查询全部,分页查询,以及模糊查询

package dao;

import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import sessionfactory.HibernateSessionFactory;
import entity.Login;

public class BaseDao {
	// 保存用户
	public void save(Login login) {
	Session session = HibernateSessionFactory.getSession();
	Transaction tran = null;
	try {
	tran = session.beginTransaction();
	session.save(login);
	tran.commit();
	System.out.println("添加成功!");
	} catch (HibernateException e) {
	tran.rollback();
	System.out.println("插入失败!");
	} finally {
	HibernateSessionFactory.closeSession();
	}
	}

	// 删除用户
	public void delete(Login login) {
	Session session = HibernateSessionFactory.getSession();
	Transaction tran = null;
	try {
	tran = session.beginTransaction();
	session.delete(login);
	System.out.println("删除成功");
	tran.commit();
	} catch (Exception e) {
	System.out.println("删除失败");
	tran.rollback();
	} finally {
	HibernateSessionFactory.closeSession();
	}
	}

	// 更新用户信息
	public void update(Login login) {
	Session session = HibernateSessionFactory.getSession();
	Transaction tran = null;
	try {
	tran = session.beginTransaction();
	session.update(login);
	tran.commit();
	System.out.println("更新成功!");
	} catch (Exception e) {
	tran.rollback();
	System.out.println("更新失败!");
	} finally {
	HibernateSessionFactory.closeSession();
	}
	}

	// 根据用户id查询
	public Login queryById(int id) {
	Login login =null;
	Session session = HibernateSessionFactory.getSession();
	Transaction tran = null;
	try {
	tran = session.beginTransaction();
	login = (Login) session.get(Login.class, id);
	tran.commit();
	} catch (Exception e) {
	tran.rollback();
	System.out.println("未找到用户!");
	} finally {
	HibernateSessionFactory.closeSession();
	}
	return login;
	}

	// 查询全部
	public List queryAll() {
	Session session = HibernateSessionFactory.getSession();
	String hql = "FROM Login";
	List list = null;
	Transaction tran = null;
	try {
	tran = session.beginTransaction();
	Query query = session.createQuery(hql);
	list = query.list();
	tran.commit();
	} catch (Exception e) {
	tran.rollback();
	} finally {
	HibernateSessionFactory.closeSession();
	}
	return list;
	}

	// 模糊查询
	public List queryLike(String name) {
	Session session = HibernateSessionFactory.getSession();
	String hql = "from Login as l where l.username like ?";
	Query query = session.createQuery(hql);
	query.setString(0, "%" + name + "%");
	List list = query.list();
	return list;
	}

	// 分页查询
	public QueryResult queryAll(int firstResult, int maxResult) {
	QueryResult qr = null;
	Session session = HibernateSessionFactory.getSession();
	Transaction tran = null;
	try {
	tran = session.beginTransaction();
	Query query = session.createQuery("FROM Login");
	List list = query.list();
	int totalCount = list.size();
	int pageSize = (totalCount%maxResult==0)?(totalCount/maxResult):(totalCount/maxResult+1);
	query.setFirstResult(firstResult);
	query.setMaxResults(maxResult);
	List listSize = query.list();
	qr = new QueryResult(pageSize, listSize);
	tran.commit();
	} catch (Exception e) {
	tran.rollback();
	} finally {
	HibernateSessionFactory.closeSession();
	}
	return qr;
	}
}

Copyright © 2019- obaigou.com 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务