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操作的更多相关文章

  1. hibernate Session的CRUD操作

    使用Session里面的方法进行CRUD操作 (1) 增加 save 方法 (2) 查找 get 方法(根据id查) (3) 修改 update 方法 (4) 删除 delete 方法 1.增加 /* ...

  2. [原创]关于Hibernate中的级联操作以及懒加载

    Hibernate: 级联操作 一.简单的介绍 cascade和inverse (Employee – Department) Casade用来说明当对主对象进行某种操作时是否对其关联的从对象也作类似 ...

  3. Hibernate中的Sesson操作

    一.Session概述 Session是应用程序与数据库之间的一个会话,是Hibernate运作的中心,持久层操作的基础,相当于JDBC中的Connection.Session对象是通过Session ...

  4. linq to sql 三层架构中使用CRUD操作

    /// <summary> /// 数据层 /// </summary> public partial class GasBottles : IGasBottles { #re ...

  5. MongoDB的CRUD操作

    1. 前言 在上一篇文章中,我们介绍了MongoDB.现在,我们来看下如何在MongoDB中进行常规的CRUD操作.毕竟,作为一个存储系统,它的基本功能就是对数据进行增删改查操作. MongoDB中的 ...

  6. 【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 ...

  7. 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 ...

  8. 如何理解Hibernate中的HibernateSessionFactory类

    package com.zz.util; import org.hibernate.HibernateException; import org.hibernate.Session; import o ...

  9. 【Java EE 学习 44】【Hibernate学习第一天】【Hibernate对单表的CRUD操作】

    一.Hibernate简介 1.hibernate是对jdbc的二次开发 2.jdbc没有缓存机制,但是hibernate有. 3.hibernate的有点和缺点 (1)优点:有缓存,而且是二级缓存: ...

随机推荐

  1. Oracle發送email功能

    Oracle 提供一個一個UTL_SMTP,可以發送email,結合oracle本身強大的schedule功能,比寫一隻排程效率高,且更簡單. split功能 /*創建package STRING_F ...

  2. LDAP 相关链接

    http://www.cnblogs.com/fish-li/archive/2012/05/07/2486840.html细说ASP.NET Windows身份认证 http://www.cnblo ...

  3. 对路径“c:\windows\system32\inetsrv\syslog”的访问被拒绝。

    win7 64 系统,在调试wcf的时候,出了这个错误,当时感觉iis的权限不够,iis搞了好长时间没解决.最后改了用到的应用程序池中的标识.标识改成 localSytem,之后问题解决. IIS-- ...

  4. C# Redis辅助类封装与简单聊天室的实现思路说明

    虽然redis api的功能比较齐全,但个人觉得为了更好的方便学习和使用,还是很有必有做一个类似DBHelper的帮助类 辅助类主要功能(代码会在最后放出来) 1. 事件监听: 重新配置广播时(主从同 ...

  5. ASP.NET Core ASP.NET Core+MVC搭建及部署

    ASP.NET Core+MVC搭建及部署 一.创建项目: 1.选择ASP.NET Core Web Application(.NET Core) 注意框架 2.选择Web Application: ...

  6. 动态生成select框内容

    获取动态数据,显示在select选项中,当前select在jsp页面中 <select > <option>这里放选中或者当前的数据</option> <%f ...

  7. leetcode 2 两数相加 JAVA

    题目: 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表示 ...

  8. kali linux之应用层Dos

    应用层服务漏洞: 服务代码存在漏洞,遇异常提交数据时程序崩溃 应用处理大量并发请求能力有限,被拒绝的是应用或OS 缓冲区溢出漏洞: 向目标函数随机提交数据,特定情况下数据覆盖临近寄存器或内存 影响:远 ...

  9. [ActionScript 3.0] 亮度、对比度、饱和度、色相的调整

    import fl.motion.ColorMatrix; import flash.filters.ColorMatrixFilter; //**调整亮度**// var ld_Matrix:Col ...

  10. Linux-Web应用服务性能测试初探

    一.服务端与客户端的准备工作 对于服务器最想要的数据就是,每秒支持的并发数,以及相应的内存CPU使用情况. 服务端需要设置最大打开描述符的限制(以支持创建大量的socket),配置socket参数.客 ...