1、添加数据操作

    插入数据使用session对象的save()方法完成。

     插入代码:

  1. @Test
  2. public void Test1(){
  3. SessionFactory sessionFactory = HibernateUtils.getFactory();
  4. Session session = sessionFactory.openSession();
  5.  
  6. Transaction tx = session.beginTransaction();
  7.  
  8. UserEntity user = new UserEntity();
  9. user.setName("jack");
  10. user.setPwd("");
  11. user.setScore(98.5f);
  12.  
  13. session.save(user);
  14. tx.commit();
  15. session.close();
  16. sessionFactory.close();
  17. }

2、根据id查询数据

    根据id查询数据需要使用session对象的get()方法完成

      查询代码:

  

  1. @Test
  2. public void Test2(){
  3. SessionFactory sessionFactory = HibernateUtils.getFactory();
  4. Session session = sessionFactory.openSession();
  5. Transaction tx = session.beginTransaction();
  6. /**
  7. * get方法参数说明:
  8. * 第一个参数:数据表对于的实体类的class
  9. * 第二个参数:需要查询的id
  10. */
  11. UserEntity userEntity =session.get(UserEntity.class, 1);
  12. System.out.println(userEntity);
  13. tx.commit();
  14. session.close();
  15. sessionFactory.close();
  16. }

3、修改数据操作

    修改数据要分两步完成,第一步:根据id将该数据查询出来。第二步:修改该实体的属性值。第三步:使用session的update()方法进行修改数据。

    代码如下:

    

  1. @Test
  2. public void Test3(){
  3. SessionFactory sessionFactory = HibernateUtils.getFactory();
  4. Session session = sessionFactory.openSession();
  5. Transaction tx = session.beginTransaction();
  6. /**
  7. * update方法参数说明:
  8. * 第一个参数:数据表对于的实体类
  9. */
  10. UserEntity userEntity =session.get(UserEntity.class, 1);
  11. userEntity.setName("lilei");
  12. session.update(userEntity);
  13. System.out.println(userEntity);
  14. tx.commit();
  15. session.close();
  16. sessionFactory.close();
  17. }

四、删除数据操作

    删除数据有两种方式:

      第一种:先将数据查询出来,然后使用session的delete方法进行数据删除。

      代码:

  1. @Test
  2. public void Test4(){
  3. SessionFactory sessionFactory = HibernateUtils.getFactory();
  4. Session session = sessionFactory.openSession();
  5. Transaction tx = session.beginTransaction();
  6. /**
  7. * delete方法参数说明:
  8. * 第一个参数:数据表对于的实体类
  9. */
  10. UserEntity userEntity =session.get(UserEntity.class, 1);
  11. session.delete(userEntity);
  12. System.out.println(userEntity);
  13. tx.commit();
  14. session.close();
  15. sessionFactory.close();
  16. }

    第二种:直接new一个实体对象,设置id值,然后调用删除。(不推荐)

    

  1. @Test
  2. public void Test5(){
  3. SessionFactory sessionFactory = HibernateUtils.getFactory();
  4. Session session = sessionFactory.openSession();
  5. Transaction tx = session.beginTransaction();
  6. /**
  7. * delete方法参数说明:
  8. * 第一个参数:数据表对于的实体类
  9. */
  10. UserEntity userEntity = new UserEntity();
  11. userEntity.setUid(1);
  12. session.delete(userEntity);
  13. System.out.println(userEntity);
  14. tx.commit();
  15. session.close();
  16. sessionFactory.close();
  17. }

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. Mathcad操作tips:2D绘图

    1. 直接输入算式进行绘图(QuickPlot) 2. 先定义函数,再利用函数绘制多个曲线.一张图最多支持16条曲线.留意“,”的用法. 3. 利用空格键和","在现有绘图上增加新 ...

  2. Arduino I2C + 温湿度传感器HTS221

    主要特性 HTS221是意法半导体(STMicroelectronics)生产的小体积.数字式温湿度传感器IC.该IC目前在官网仍处在“评估”状态.其主要特性: 工作电压:1.7~3.6V 数据输出频 ...

  3. django media配置

    当我们需要向服务器发送图片或视频,需要对这些媒体文件进行保存时,需要指定保存在哪并将保存的路径添加到路由中. 1.设置settings.py MEDIA_URL = '/media/' MEDIA_R ...

  4. .net core2.1 CookieHelper

    /// <summary> /// ** 描述:Cookie for .net core2.1 /// ** 创始时间:2018-11-19 /// ** 修改时间:- /// ** 作者 ...

  5. Strings in the Pocket(马拉车+字符串判断)

    题目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=6012 BaoBao has just found two strings ...

  6. jquery事件一 ---鼠标移入移出

    比较一下几个jquery事件的区别 mouseover() 鼠标进入(进入子元素也触发) mouseout() 鼠标离开(离开子元素也触发) mouseenter() 鼠标进入(进入子元素不触发) m ...

  7. spring框架里面的注入?

    在Spring框架里面注入可以通过1.setter方法注入:2.构造器注入:3.注入对象 在配置文件中配置如下: 前面两者不能同时注入: 入 如果前两者同时注入将会报错 将注入修改以后,如下图: 修改 ...

  8. 对xaml的深入探究(补交作业)

    首先,下结论,看完那个外国老师的视频后,5%左右听懂了,分享给大家: 1.理解一下,xaml是特殊的xml,我们可以从代码语法看出,xaml中的打码很类似与html和xml的代码. 2.xaml.cs ...

  9. PHP curl 上传文件版本兼容问题

    [摘要:做微疑开辟挪用微疑接心上传文件时,总是返回 {"errcode":41005,"errmsg":"media data missing hin ...

  10. 对django的理解

    http://www.cnblogs.com/chongdongxiaoyu/p/9403399.html https://blog.csdn.net/weixin_42134789/article/ ...