`

Session接口操作数据库的核心方法

SQL 
阅读更多

1.save()——规范例子:
  

 public void addUser(User user){
  	 Session session = null;
  	 Transaction tx = null;
  	 try{
   		 session = HibernateUtil.getSession();
   		 tx.session.beginTransaction();
   		 session.save(user);
   		 tx.commit();
 	  }catch(HibernateException e){
   		 if(tx != null){
   			  tx.rollback();
 	 	  }
  		  throw e;
  	 }finally{
  		  if(session != null){
  			   session.close();
  		  }
 	  }
  }

 
 2.get()——get方法可以不要打开事务,会立刻访问数据库

 public User getUser(int id){
  	 Session session = null;
  	 //Transaction tx = null;
  	 try{
  	  session = HibernateUtil.getSession();
  	  //tx.session.beginTransaction();
  	  session.get(User.class,id);
  	  //tx.commit();
  	  return user;
 	  }finally{
  		  if(session != null){
  		   session.close();
  		  }
  	 }
  } 

 
 显示sql语句配置:
<properties name="show_sql" value="true">
3.load()——和get类似。当使用的才加载,永远都不会为空,返回的是代理不会立即访问数据库
即:if(user != null)是不对的它永远都不为空。
4.merge()和更新一样
5.persist()和save()一样,区别在于有没有开启事务。persist在事务外不会产生insert语句
6.saveOrUpdate()
7.delete() 删除对象
8.update() 更新对象,如果数据库中没有记录会出现异常
9.lock() 把对象变成持久对象但不会同步对象的状态

分享到:
评论

相关推荐

    Hibernate操作数据库的方法

    Hibernate操作数据库时,主要通过以下几个核心组件来实现持久层操作: 1. **Session**:Session是Hibernate用来和数据库进行交互的一个轻量级对象,它相当于JDBC中的Connection。Session对象是应用程序与数据库进行...

    04_传智播客hibernate教程_Session接口及getloadpersist方法

    总之,掌握Hibernate的Session接口及其主要方法,对于Java开发人员来说至关重要,这有助于我们更高效地操作数据库,实现ORM的无缝对接。通过深入学习和实践,可以大幅提升开发效率,减少出错的可能性。在本教程中,...

    Hibernate操作数据库的步骤

    3. **打开Session**:`Session`是操作数据库的主要接口,它是短暂的,每次数据库操作结束后都需要关闭。`SessionFactory.openSession()`方法用于获取一个新的`Session`实例。在实际应用中,通常会将其封装在工具类中...

    hibernate的核心接口--Session

    ### Hibernate的核心接口——Session详解 #### 一、Session简述 **1. Session概念** - **定义**: Session 是 Hibernate 框架中最常用的接口之一,它又被称为持久化管理器。Session 负责所有与数据库交互的工作,...

    java使用hibernate操作数据库jar

    1. Session: Hibernate的核心接口,负责与数据库的交互,提供了事务管理、缓存管理以及持久化对象的创建、查询、更新和删除等操作。 2. Configuration:负责初始化Hibernate环境,加载配置文件,建立SessionFactory...

    Java封装hibernate操作数据库.rar

    1. DAO接口:定义了对数据库的操作方法,如获取所有数据、保存数据、更新数据、删除数据等。 2. DAO实现类:实现了DAO接口,具体执行数据库操作。这里会使用Hibernate的Session、Transaction等接口来执行SQL语句。 3...

    原生session操作IoTDB.zip

    - `iotdb-session-0.10.1.jar`:IoTDB的Session接口库,包含了原生Session操作所需的类和接口。 5. **数据模型**:IoTDB使用设备(Device)和传感器(Measurement)的概念来组织时序数据,每个Device可以有多个...

    这是我用JSP写的购物车,没有连接数据库!

    2. **会话(Session)对象**:在JSP中,`HttpSession`接口用于创建和管理会话。当用户添加商品到购物车时,可以将商品信息(如ID、数量、价格等)存储在会话对象中。例如: ```jsp HttpSession session = ...

    Java自定义的类似ORM的数据库操作框架

    2. **Session接口/类**:在自定义框架中,`Session`接口或类是与数据库进行交互的主要接口。它提供了增删改查的基本方法,如`save()`, `update()`, `delete()`, `query()`等。通过这些方法,开发者可以直接操作对象...

    hibernate数据库访问接口设计

    Hibernate 的核心接口是 `Session`,它类似于 JDBC 的 Connection。`Session` 负责执行 CRUD 操作,即创建、读取、更新和删除数据。它还负责管理对象的状态,如持久化状态、瞬时状态和游离状态,并提供事务控制。 #...

    Hibernate核心接口

    Session 接口是 Hibernate 的核心接口之一,它负责对持久化对象的存取操作。Session 对象是轻量级的,可以被多个线程共享。Session 对象提供了许多方法来操作持久化对象,例如 save、update、delete 等。 4. ...

    JDBC操作数据库辅助类

    会话类模拟了ORM框架(如Hibernate)中的Session概念,提供了一种更高级别的数据库操作接口。它封装了基本的JDBC操作,比如执行SQL查询、插入、更新和删除操作。JdbcSession可能包含以下特性: - 提供易于使用的API...

    SSH增删该查操作SQL数据库(源码)

    Hibernate提供了Session接口,通过它可以进行查询、保存、更新和删除等数据库操作。此外,Hibernate还支持HQL(Hibernate Query Language),这是一种面向对象的查询语言,类似于SQL,但更适应面向对象的环境。 在...

    java操作mysql数据库,不写sql语句版

    Hibernate通过XML配置文件或注解将Java实体类映射到数据库表,然后提供了Session接口来处理数据持久化。例如,我们可以使用`Session.save()`方法来保存对象,`Session.get()`来读取,`Session.update()`来更新,以及...

    在hibernate中的数据库操作

    - **作用**: `Session` 是 Hibernate 中的核心接口之一,它负责执行所有与数据库交互的操作,如保存、更新、查询和删除等。 - **生命周期**: 每个 `Session` 实例都有自己的生命周期,通常在一个事务或业务逻辑单元...

    过滤器操作数据库验证合法用户

    这个类需要重写`doFilter()`方法,它是过滤器的核心,会在每次请求经过时被调用。在这个方法内,我们可以编写代码来检查用户是否已登录并验证其身份。 1. **身份验证**:首先,我们需要从请求中获取用户的认证信息...

    TP sessionDB驱动

    4. **读写操作**:`read($id)`方法用于从数据库中读取session数据,根据给定的session ID获取对应的session数据。`write($id, $data)`方法负责将session数据保存到数据库,其中$id是session ID,$data是序列化的...

    分别使用Hibernate和JDBC操作数据库

    2. **Session接口**:类似于JDBC中的Connection,它是操作数据库的基本单元,提供事务管理和缓存管理。 3. **Entity类**:Java类代表数据库表,通过注解(@Entity)声明为Hibernate实体。 4. **持久化操作**:使用...

    Hibernate的核心接口与类

    `Session`接口代表与数据库的对话,是执行所有持久化操作的基础。通过`SessionFactory`的`openSession()`方法获得,提供了一系列方法用于执行CRUD(创建、读取、更新、删除)操作。 #### Transaction类 `...

    SpringBoot 整合 Shiro,实现从数据库加载权限、权限的动态更新、Session共享

    我们可以创建一个继承自AuthorizingRealm的类,实现doGetAuthenticationInfo和doGetAuthorizationInfo方法,从数据库查询并返回必要的认证和授权信息。 2. **权限的动态更新**:在权限系统中,权限的动态更新意味着...

Global site tag (gtag.js) - Google Analytics