zoukankan      html  css  js  c++  java
  • 3、Hibernate实现简单的CRUD操作

    CRUD :

    Create 增加   Retrieve 读取(重新获得数据)  Update 更新   Delete  删除

    PersonDao的实现如下:

    package com.baowei.dao;
    
    import java.util.List;
    
    import org.hibernate.Session;
    
    import com.baowei.entity.Person;
    import com.baowei.utils.HibernateUtil;
    
    public class PersonDao {
    
        public void save(Person person) {
            Session session = null;
            try {
                session = HibernateUtil.openSession();
                session.getTransaction().begin();
                session.save(person);
                session.getTransaction().commit();
            } catch (Exception e) {
                if (session != null)
                    session.getTransaction().rollback();
                throw new RuntimeException(e);
            } finally {
                if (session != null) {
                    HibernateUtil.close(session);
                }
            }
    
        }
    
        public void update(Person person) {
            Session session = null;
            try {
                session = HibernateUtil.openSession();
                session.getTransaction().begin();
                session.update(person);
                session.getTransaction().commit();
            } catch (Exception e) {
                if (session != null)
                    session.getTransaction().rollback();
                throw new RuntimeException(e);
            } finally {
                if (session != null) {
                    HibernateUtil.close(session);
                }
            }
    
        }
    
        public void delete(Person person) {
            Session session = null;
            try {
                session = HibernateUtil.openSession();
                session.getTransaction().begin();
                session.delete(person);
                session.getTransaction().commit();
            } catch (Exception e) {
                if (session != null)
                    session.getTransaction().rollback();
                throw new RuntimeException(e);
            } finally {
                if (session != null) {
                    HibernateUtil.close(session);
                }
            }
    
        }
    
        public Person findById(int id) {
            Session session = null;
            Person person = null;
            try {
                session = HibernateUtil.openSession();
                session.getTransaction().begin();
                person = (Person) session.get(Person.class, id);
                session.getTransaction().commit();
                return person;
            } catch (Exception e) {
                throw new RuntimeException(e);
            } finally {
                if (session != null)
                    session.getTransaction().rollback();
                if (session != null) {
                    HibernateUtil.close(session);
                }
            }
        }
    
        public List findAll() {
            Session session = null;
            List persons = null;
            try {
                session = HibernateUtil.openSession();
                session.getTransaction().begin();
                persons = session.createQuery("from Person").list();
                // persons = session.createSQLQuery("select * from person").list();
                session.getTransaction().commit();
                return persons;
            } catch (Exception e) {
                if (session != null)
                    session.getTransaction().rollback();
                throw new RuntimeException(e);
            } finally {
                if (session != null) {
                    HibernateUtil.close(session);
                }
            }
        }
    
        public List page(int firstResult, int maxResults) {
            Session session = null;
            List persons = null;
            try {
                session = HibernateUtil.openSession();
                session.getTransaction().begin();
                persons = session.createQuery("from Person")
                        .setFirstResult(firstResult).setMaxResults(maxResults)
                        .list();
                // persons = session.createSQLQuery("select * from person").list();
                session.getTransaction().commit();
                return persons;
            } catch (Exception e) {
                if (session != null)
                    session.getTransaction().rollback();
                throw new RuntimeException(e);
            } finally {
                if (session != null) {
                    HibernateUtil.close(session);
                }
            }
        }
    
    }
  • 相关阅读:
    [智能架构系列]PHP获取用户IP所在地的信息
    BT的QQ,从QQ2011看腾讯的变化
    值得怀念的日子
    懂运营的RD是最好的PM
    A && B
    更新redis到2.2.1版本
    [智能架构系列]什么是Buddy智能开发框架
    PHP你知道的
    No copy,No paste
    结网读书笔记从产品经理的角度看产品
  • 原文地址:https://www.cnblogs.com/zhangbaowei/p/4853406.html
Copyright © 2011-2022 走看看