Hibernate中的CRUD操作
1、添加数据操作
插入数据使用session对象的save()方法完成。
插入代码:
@Test
public void Test1(){
SessionFactory sessionFactory = HibernateUtils.getFactory();
Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); UserEntity user = new UserEntity();
user.setName("jack");
user.setPwd("");
user.setScore(98.5f); session.save(user);
tx.commit();
session.close();
sessionFactory.close();
}
2、根据id查询数据
根据id查询数据需要使用session对象的get()方法完成
查询代码:
@Test
public void Test2(){
SessionFactory sessionFactory = HibernateUtils.getFactory();
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
/**
* get方法参数说明:
* 第一个参数:数据表对于的实体类的class
* 第二个参数:需要查询的id
*/
UserEntity userEntity =session.get(UserEntity.class, 1);
System.out.println(userEntity);
tx.commit();
session.close();
sessionFactory.close();
}
3、修改数据操作
修改数据要分两步完成,第一步:根据id将该数据查询出来。第二步:修改该实体的属性值。第三步:使用session的update()方法进行修改数据。
代码如下:
@Test
public void Test3(){
SessionFactory sessionFactory = HibernateUtils.getFactory();
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
/**
* update方法参数说明:
* 第一个参数:数据表对于的实体类
*/
UserEntity userEntity =session.get(UserEntity.class, 1);
userEntity.setName("lilei");
session.update(userEntity);
System.out.println(userEntity);
tx.commit();
session.close();
sessionFactory.close();
}
四、删除数据操作
删除数据有两种方式:
第一种:先将数据查询出来,然后使用session的delete方法进行数据删除。
代码:
@Test
public void Test4(){
SessionFactory sessionFactory = HibernateUtils.getFactory();
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
/**
* delete方法参数说明:
* 第一个参数:数据表对于的实体类
*/
UserEntity userEntity =session.get(UserEntity.class, 1);
session.delete(userEntity);
System.out.println(userEntity);
tx.commit();
session.close();
sessionFactory.close();
}
第二种:直接new一个实体对象,设置id值,然后调用删除。(不推荐)
@Test
public void Test5(){
SessionFactory sessionFactory = HibernateUtils.getFactory();
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
/**
* delete方法参数说明:
* 第一个参数:数据表对于的实体类
*/
UserEntity userEntity = new UserEntity();
userEntity.setUid(1);
session.delete(userEntity);
System.out.println(userEntity);
tx.commit();
session.close();
sessionFactory.close();
}
Hibernate中的CRUD操作的更多相关文章
- hibernate Session的CRUD操作
使用Session里面的方法进行CRUD操作 (1) 增加 save 方法 (2) 查找 get 方法(根据id查) (3) 修改 update 方法 (4) 删除 delete 方法 1.增加 /* ...
- [原创]关于Hibernate中的级联操作以及懒加载
Hibernate: 级联操作 一.简单的介绍 cascade和inverse (Employee – Department) Casade用来说明当对主对象进行某种操作时是否对其关联的从对象也作类似 ...
- Hibernate中的Sesson操作
一.Session概述 Session是应用程序与数据库之间的一个会话,是Hibernate运作的中心,持久层操作的基础,相当于JDBC中的Connection.Session对象是通过Session ...
- linq to sql 三层架构中使用CRUD操作
/// <summary> /// 数据层 /// </summary> public partial class GasBottles : IGasBottles { #re ...
- MongoDB的CRUD操作
1. 前言 在上一篇文章中,我们介绍了MongoDB.现在,我们来看下如何在MongoDB中进行常规的CRUD操作.毕竟,作为一个存储系统,它的基本功能就是对数据进行增删改查操作. MongoDB中的 ...
- 【ASP.NET Web API教程】2.1 创建支持CRUD操作的Web API
原文 [ASP.NET Web API教程]2.1 创建支持CRUD操作的Web API 2.1 Creating a Web API that Supports CRUD Operations2.1 ...
- Asp.Net Web API 2(CRUD操作)第二课
Asp.Net Web API 2(CRUD操作)第二课 Asp.Net Web API 导航 Asp.Net Web API第一课:入门http://www.cnblogs.com/aehyok ...
- 如何理解Hibernate中的HibernateSessionFactory类
package com.zz.util; import org.hibernate.HibernateException; import org.hibernate.Session; import o ...
- 【Java EE 学习 44】【Hibernate学习第一天】【Hibernate对单表的CRUD操作】
一.Hibernate简介 1.hibernate是对jdbc的二次开发 2.jdbc没有缓存机制,但是hibernate有. 3.hibernate的有点和缺点 (1)优点:有缓存,而且是二级缓存: ...
随机推荐
- VS2010下安装OpenCV2.4.3
本文记录Windows 7 X86 SP1操作系统环境下,安装与配置OpenCV2.4.3的详细步骤.前置需求:已安装有VS2010. 下载并安装OpenCV 从http://www.opencv.o ...
- [LeetCode 题解]: Merge k Sorted Lists
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. 题 ...
- Thrift框架学习
参考文章:1.http://www.kankanews.com/ICkengine/archives/54084.shtml 2.http://www.cnblogs.com/liping135991 ...
- 2. Python的划分
解释型:当程序运行时,将代码从上至下,一句一句解释成二进制,在执行. 典型:python,php 优点:开发速度快,可以跨平台. 缺点:执行效率慢 编译型:将源码一次性转化成二进制文件,然后在执行. ...
- Mysql内置功能《三》视图
一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...
- css3动画(animation)效果1-漂浮的白云
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- jvisualvm_使用jmx连接远程linux应用
[前提] JVisualVM是由Sun提供的性能分析工具,在Jdk6.0以后的版本中是自带的,如果是用Jdk1.5或以前版本的就得要单独安装了. [1]远程机器需要开启jmx 在使用jvisualvm ...
- Docker容器基础认知
## 一. [docker](http://www.itxdm.me/archives/tag/docker/)概念 [Docker](http://www.itxdm.me/wp-content/p ...
- [开源] angularjs + Asp.net 前后端分离解决方案
本文版权归 博客园 萧秦 所有,此处为技术收藏,如有再转,请于篇头明显位置标明原创作者及出处,以示尊重! 作者:萧秦 原文:http://www.cnblogs.com/xqin/p/4862849. ...
- 性能分析工具VisualVM for eclipse安装过程总结
Java VisualVM Java VisualVM is a tool that provides a visual interface for viewing detailed informat ...