`

Hibernate插入、查询、删除操作

阅读更多
Hibernate 语法:
Hibernate的所有的操作都是通过Session完成的.
基本步骤如下:
1:通过配置文件得到SessionFactory:
     SessionFactory sessionFactory=new Configuration().configure().buildSessionFactory();
2:通过SessionFactory 得到一个Session
     Session session=sessionFactory.openSession();
3:通过session进行插入,删除,修改以及查询.
    插入例子:(1)声明一个事务;(2)Session执行save()操作;(3)事务提交;(4)关闭Session,可选.
               
           
             public void insert(Person p){
   
   Transaction tran=session.beginTransaction();
  
   session.save(p);
                
                tran.commit();
   
//   session.close();
             
             }
     
    修改例子:(1)声明一个事务;(2)Session执行update()操作;(3)事务提交;(4)关闭Session,可选.
             public void update(Person p){

   Transaction tran=session.beginTransaction();
   session.update(p);
   tran.commit();
//   session.close();
   }
    删除例子(主键删除,推荐使用):(1) 声明删除的SQl语句;(2)创建session的Query对象;(3)设置Query对象的参数;(4)执行Query的executeUpdate()操作;(5)Session事务提交
     public void delete(int id){
   String hql="delete Person as p where p.id=?";
   Query query=session.createQuery(hql);
   query.setInteger(0,id);
   query.executeUpdate();
   session.beginTransaction().commit();

            }
   删除例子(对象删除):(1)声明一个事务;(2)Session执行delete()操作;(3)事务提交;(4)关闭Session,可选.
  
    public void delete(Person p){
   Transaction tran = session.beginTransaction();
   session.delete(p);
  
   tran.commit();
   session.close();
  
   }
   查询例子:(跟删除差不多) 查询语句不需要事务提交

(1) 声明删除的SQl语句;(2)创建session的Query对象;(3)设置Query对象的参数;
   public Persion queryById(int id){

   String hql="from Person as p where p.id=?";
   Query query=session.createQuery();
  
   query.setInteger(0,id);
   List rsList=query.list();

   iterator it=rsList.iterator();
   Person person=null; 

   while(it.haseNext()){
     person=(Person)it.next();

    }

   return person;
   } 

 

分享到:
评论

相关推荐

    hibernate操作

    `get()`用于根据主键查询,`createQuery()`用于构建HQL(Hibernate Query Language)查询,`save()`用于插入新记录,而`delete()`则用于删除记录。注意在执行事务性操作时,需要使用`Transaction`来确保数据的一致性...

    hibernate数据库相关操作步骤

    - `Session`是数据库会话,用于执行数据库操作,如查询、更新和删除。它是线程不安全的,每次操作数据库时需要创建新的`Session`实例。 5. **操作数据库** - **保存/插入**:使用`Session`的`save()`或`...

    Hibernate操作数据库的方法

    上述代码展示了Hibernate在插入更新和删除操作时的基本流程。在实际应用中,开发者需要根据具体的业务逻辑和需求来调整代码,例如,在插入更新操作时,可能需要根据主键是否已存在来决定是插入新记录还是更新现有...

    超好用的hibernate查询工具类

    6. **批量操作**:提供批量插入、更新或删除的方法,比如`public void batchSave(List<T> entities)`,这在处理大量数据时可以大大提高效率。 7. **缓存管理**:Hibernate支持第二级缓存,工具类可以封装缓存的启用...

    hibernate的查询方式介绍和hibernate的批处理和连接池配置hibernate

    批处理是 Hibernate 中一种提高性能的方法,特别是在进行大量数据的插入、更新或删除时尤为明显。 - **默认行为** - 默认情况下,Hibernate 每次执行一条 SQL 语句后都会自动提交事务。 - **批量处理** - 可以...

    hibernate代码优化基于配置的多表查询

    例如,使用`Session.flush()`和`Session.clear()`控制事务边界,或配置`hibernate.jdbc.batch_size`来批量插入、更新和删除数据。 7. **避免N+1查询问题**: 当遍历一个集合并访问其关联属性时,可能会触发多次...

    Hibernate中查询的法方

    在本文中,我们将深入探讨Hibernate中的一些基本查询方法,这对于初学者掌握Hibernate进行数据操作非常有帮助。 1. **保存(Save)** Hibernate提供了`save()`方法来保存一个持久化对象到数据库。例如,如果有一个...

    JPA + Hibernate 3 CRUD操作历史审计日志的解决方案

    在Java企业级应用开发中,数据的创建、更新和删除(CRUD)操作是常见的需求。JPA(Java Persistence API)作为Java EE的一部分,提供了一种标准的方式来管理和持久化Java对象到关系数据库。Hibernate作为JPA的一个...

    Hibernate框架搭建及数据库相关操作

    6. **Cascading 和 Join Fetching**:Cascading 可以简化关联对象的保存、更新和删除操作,Join Fetching 优化了多表查询性能。 7. **实体生命周期**:Hibernate 提供了预加载、加载、持久化、更新、删除、脱管等...

    Hibernate基础和入门:新建表和插入表

    标题“Hibernate基础和入门:新建表和插入表”表明这篇内容将主要围绕Hibernate这一Java持久化框架的基础知识展开,重点讲解如何使用Hibernate创建数据库表以及进行数据插入操作。Hibernate是一个强大的ORM(对象...

    Hibernate数据查询

    Hibernate提供了批量插入、更新和删除的方法,如`Session.saveOrUpdateAll()`和`Session.deleteAll()`,可以提高数据处理效率。 10. **查询优化** - 使用HQL或Criteria API而非原生SQL,以利用Hibernate的查询...

    Hibernate框架jia包

    这个“Hibernate框架jia包”包含了你需要在项目中使用Hibernate的所有核心库和依赖,确保你能顺利进行数据库操作。 1. **什么是Hibernate**: Hibernate是一个开源的ORM框架,它提供了一种在Java应用中持久化数据...

    java使用hibernate操作数据库jar

    它通过提供一套API和元数据配置,使得开发者能够通过对象的方式来处理数据库操作,如查询、插入、更新和删除等,避免了编写大量重复的SQL代码。 二、Hibernate核心组件 1. Session: Hibernate的核心接口,负责与...

    hibernate(一对多,多对一映射)操作

    - 增加:在保存父实体时,可以同时保存其关联的子实体,Hibernate会自动处理子实体的插入操作。对于多对一关系,只需要在父实体中设置子实体的引用即可。 - 查询:可以通过HQL(Hibernate Query Language)或者 ...

    Struts2+hibernate雇员部门操作

    在这个项目中,Hibernate被用来管理雇员和部门两个数据库表,实现CRUD(创建、读取、更新、删除)操作。 在实现"增删改,分页操作"时,有以下关键点: - **增删改操作**:通过Hibernate的Session接口进行。新建...

    hibernate3.5完整jar

    10. **批处理操作**:通过设置批处理大小,Hibernate可以优化批量插入、更新和删除的性能,减少与数据库的交互次数。 11. **JPA支持**:虽然Hibernate最初是一个独立的ORM框架,但在3.5版本中,它也兼容Java ...

    Hibernate通用数据库操作方法

    在上述代码中,我们看到了四个核心的 Hibernate 操作:插入(insert)、删除(delete)、更新(update)以及查询(select),这些都是在数据库操作中非常基础且重要的功能。 1. **插入(insert)**: `insert` ...

Global site tag (gtag.js) - Google Analytics