hibernate基本概念和CURD(增删改查)详解


开发流程三种方式

1、由Domain object -> mapping->db。(官方推荐)

    

2、由DB开始,用工具生成mapping和Domain object。(使用较多)

3、由映射文件开始。

一.        Domain Object限制(实体类的限制)

class clazz=User.class;

//调用无参的构造方法

User user=clazz.newInstence();

1.默认的无参构造方法(如果你加上了有参数的构造方法,必须加上无参的构造)

2.有无意义的标示符id(主键)(可选)(hibernate性能不能完全发挥)

3.非final的类,对懒加载有影响(可选)(hibernate性能不能完全发挥)

二.        映射文件

一个java类在映射文件中用一对<clas>标签表示。如果有多个java类,那么就应该有多个<class>标签,这些class标签,可以放到一个影身文件中,可以放到多个映射文件中。类型名.hbm.xml(这样命名可读性好),

如果类名饿表明一样的话,可以省略table属性

三.        session接口中用到的方法

l  Session的几个主要方法

   1、save,persist保存数据,persist在事务外不会产生insert语句。开启事务和save方法一样,但是如果都不开启事务save做了插入回滚,persist不做插入 

 

   2、delete,删除对象

   3、update,更新对象,如果数据库中没有记录,会出现异常。

   4、get,根据ID查,会立刻访问数据库。

   5、Load,根据ID查,(返回的是代理,不会立即访问数据库)。

   6、saveOrUpdate,merge(根据ID和version的值来确定是save或update),调用merge你的对象还是托管的。

   7、lock(把对象变成持久对象,但不会同步对象的状态)。

   8、load(),第一次使用才访问,懒加载

9、clear()清楚缓存

四.模板代码

public static void addUser1(User user){

     Session session=null;

     Transaction tx=null;

     try{

        session=HibernateUtil.getSession();

        tx=session.beginTransaction();

       

        session.save(user);

        //hibernate的自动回滚

        tx.commit();

       

     }finally{

       

        if(session!=null)

          session.close();

     }

   }

四.   对象的状态

(1)瞬时状态:自己new出来的对象。在数据库的表中是没有记录和相应的瞬时对象是对应的.

(2)     持久状态的对象:session.Save(user);数据库中有记录和这个对象相对应得并且被session管理,持久状态的数据改变时,数据库也会随着改变

(3)      

脱管状态:数据库的表中有一条记录和对象相对应,和session脱离管理,对象在做任何改变数据库都不会改变

【人工智能】从零开始玩转龙虾(Openclaw):本地与云端(火山Arkcloud)部署全指南 龙虾(Openclaw)是一款海外智能体操作系统(agent operating system),可通过飞书机器人实现自动化办公、信息抓取、任务协作等功能。它支持本地部署和云端部署两种方式,适配MacOS和Windows系统(,建议优先使用MacOS)。sudo。 阅读详情

相关推荐

PaddleOCR实战:给图片‘加个框’,轻松搞定小图和长图文字识别不准的难题

本文探讨了PaddleOCR在处理小图和长图时识别精度下降的问题,并提出通过图像边框预处理技术显著提升OCR识别效果。详细介绍了使用OpenCV实现智能边框添加的方法,包括核心原理、工程实践中的关键细节以及性能优化策略,帮助开发者轻松解决非常规尺寸图像的文本检测难题。

weixin_29313547的博客 188

mysql基本查询

基本查询 select * from test; select * from 表名; select sno,sname,saddr,ssort from test order bu ssort asc; select 属性名,属性名,属性名,属性名 from 表名 order by 属性名 asc; PS:order by 属性名 asc; 某一个属性 升序 查询限制结果行 limit限制结果最大行数 select sno,sname form test limit 3000; select 属性

javachao_qiufeng的博客 760

vins-mono前端详解(2)——imu预积分

本篇文章详细讲解了vins-mono中imu预积分内容,包括复杂的公式推导。

weixin_44587828的博客 1195

mysql curd操作_MySQL 基本操作 之 库操作

MySQL 基本操作 之 库操作SQL 基本操作数据库的基本操作是CURD,即 增删改查。有必要了解一下CURD的全称:它代表 创建(Create)、 更新(Update)、 读取(Read)和 删除(Delete)操作,取首字母就是CURD了。根据操作对象的不同,咱们可以将 SQL 的基本操作分为三类,分别为: - 操作数据库 - 表(字段)操作 - 数据操作。数据库操作1 新建数据库基本语法:...

weixin_29568097的博客 582

重构工业交互体验:响应式数据可视化大屏解决方案

从智慧园区到数据中心,从水务监控到风力发电场景,HT 通过 2D/3D 组态技术与响应式布局机制,让数据以更灵活、更精准的方式呈现场景动态 —— 这正是 HT 技术在工业可视化领域的核心价值。例如,在智慧楼宇监控系统中,HT 引擎可实时渲染建筑结构、设备状态与数据流,同时确保画面在不同尺寸屏幕上的一致性。以某工业数据中心大屏为例,HT 通过暗红色主调搭配工业元素,结合粉色与黄色点缀,打破传统深蓝色大屏的视觉定式,同时通过矢量图形确保色彩在不同亮度下的辨识度 —— 这正是 HT 技术在视觉设计上的独特优势。

Hightopo的博客 889

28、时间敏感网络中可靠性感知的综合路由与调度

本文针对时间敏感网络(TSN)中现有路由与调度机制主要关注时间触发(TT)流量而忽略其他类型流量效用的问题,提出了一种可靠性感知的综合路由与调度机制。通过将具有不同可靠性和延迟要求的各类流量的联合路由与调度问题形式化为基于优化模理论(OMT)的混合整数规划问题,设计了完整的路由约束与调度约束,并分析了不同类型流量的传输效用,设定了优化目标以提升整体网络性能。实验结果表明,该机制在满足TT流量严格时延与可靠性要求的同时,显著提高了AVB和BE等非关键流量的传输效用,实现了多类型流量的高效协同传输。

hhh00的博客 95

SpringBoot实现增删改查(curd)功能(非常详细)

数据库表结构(user表)

m0_64245578的博客 5057

vue2学习笔记2-老规矩,从Hello World开始,了解Vue实例和模板

想要把“Hello,World”放置在页面上,首先需要准备一个HTML的块级元素div,来承接内容。

l_q_l的专栏 1258

MySQL快速入门篇---增删改查(上)

增删改查操作,又称为CURD,是对数据库中的记录进行基本的增删改查操作。• Create(创建)• Retrieve(读取)• Update(更新)• Delete(删除)

huangtiandi11的博客 2万+

ESP32 VSCode开发环境配置

ESP32 VSCode开发环境配置

qq_53529450的博客 509

Open3D 可视化(1)——简单可视化【2026最新版】

简单可视化,博客长期更新,本文最新更新时间为:2026年5月10日。

点云侠的博客 5686

【MySQL】数据库的基础操作二:增删改查CURD

CURD在SQL表示增加(Create),删除(Delete),修改(Update)和查询(Retrieve)。

qq_48479056的博客 992

61、神经科学中的分岔与双分子反应研究

本文探讨了神经科学中的分岔现象与双分子反应建模。在神经元网络中,通过分析四细胞网络的呼吸节律振荡,揭示了分岔对振荡频率和占空比的影响,并区分了单神经元与网络层面的分岔特性。在神经群体模型中,系统参数变化引发的分岔可导致振荡、混沌等动态行为转变,文中详细介绍了局部分岔、全局分岔和高余维分岔的机制,并以Jansen-Rit模型为例展示了输入水平变化下的分岔过程。在分子层面,重点介绍了MWC模型在描述配体与多位点蛋白质结合中的应用,涵盖其构象状态、平衡常数及统计因子。研究表明,分岔理论和双分子反应建模为理解神经系

yog99的博客 80

Hibemate基本概念和CURD详解

Hibernate基本概念和CURD(增删改查)详解 开发流程三种方式 1、由Domain object -> mapping->db。(官方推荐) 2、由DB开始,用工具生成mapping和Domain object。(使用较多) 3、由映射文件开始。 一.         Domain Object限制(实体类的限制) class clazz=User.class; //调用无参

liu716zhifei的专栏 1493

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Hibernate开发流程——基本概念和CURD

Hibernate开发流程——基本概念和CURD 一、开发流程 (1)       Domain类 (2)映射文件User.hbm.xml (3)表create table user(); 1、  由Domain object->mapping->db.(官方推荐) 2、  由DB开始,用工具生成mapping和Domain object。 3、  由映射文件开始。 二、  1、

657

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

hibernate学习---用Session实现CURD


 我们使用Hibernate的目的是什么?对数据库进行操作,所有接下来我们就用Hibernate来进行CURD。 前边我们已经分析过了Configuration,SessionFactory和Session,接下来我们就利用Session对象来进行增删改查: 在进行增删改查之前我们先对SessionFactory和Session进行一些简单的封装: public ...

m0_37109682的博客 187

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Hibernate环境的配置和CURD操作

1.新建java工程项目 新建lib包用来存放从官网下载的Hibernate开发包 同时加入c3p0数据库连接池Jar包和jdbc驱动包,然后将所有jar包build path到工程 2.创建实体类和实体类表结构映射关系文件 映射文件和实体类在同一包下,命名规则是:类名.hbm.xml 3.配置主配置文件(数据库文件) 配置信息在源码中project下的etc中的hibernate.pro...

后端开发 251

Hibernate详解(一)搭建Hibernate环境,实现简单的CURD

声明:文章转载只能用于非商业性质,转载须注明出处:http://blog.youkuaiyun.com/u013212717

一个人孤独的行走 431

【Hibernate】Hibernate常用增删改查方法

1.简单CURD1.1 `session.get(实体类名.class,主键值)`1.2 `session.load(实体类名.class,主键值)`1.3 `session.save(对象)`1.4 `session.update(对象)`1.5 `session.saveOrUpdate(对象)`1.6 `session.delete(对象)`1.7 `session.list(对象)` ...

Duson 2392

基本概念和CURD

基本概念和CURD Hibernate需要的三个条件 (1)、Domain类 (2)、 映射文件User.hbm.xml  (3)、表create table user(); 一、开发流程 1、 由Domian object ->mapping->db(官方推荐) 2、 由DB开始,用工具生成mapping和Domain object。(使用较多) 3、 有映射文件开始 二、

liu716zhifei的专栏 647

hibernate基于单表curd

目录1. hibernate框架2. 配置文件实体mapper和hibernate.cfg.xml3. 操作单表增删改查 1. hibernate框架 数据持久层的框架 功能定位:专门用来访问数据库,对数据库进行增删改查操作 Hibernate是一个ORM框架 MyBatis MyBatisPlus、JPA(springdata jpa) ORM:Object Relational Mapping(对象关系映射) 特点 1. 上手较难 2. 灵活度低 3. 全自动(不写sql语句操作数据库) 2.

while(True): print('adorable') 376

【hibernate】hibernate 2 (基本概念和CURD)

基本概念和CURD 开发流程 由Domain object -> mapping->db。(官方推荐)由DB开始,用工具生成mapping和Domain object。(使用较多)由映射文件开始。 一把情况下使用第二种 第二种从数据库开始,先做数据库然后映射文件 Domain Object限制 默认的构造方法(必须的)。有无意义的标示符id(主键)(

寂寞╮如影随形的博客 418

hibernate学习-CURD-第3天

1、工具类的创建 每次在获取 Session 时,都需要通过 Configuration 对象加载主配置文件与映射文件,并 且要创建 SessionFactory 对象,降低了开发与执行效率。所以,对于 Session 对象的获取, 可以创建一个工具类。 public class HbnUtils { private static SessionFactory sessionfactory; ...

chegy218的博客 200

Hibernate入门教程 (使用Hibernate实现curd)

目录hibernate简介CURD 操作教程导入maven依赖写配置文件实体类对象实体类对象对应的配置文件新增操作删除操作修改操作查询操作hibernate管理对象的三种状态 hibernate简介 1、ORM框架/持久层框架 jdbc的一个框架 3、通过管理对象来改变数据库中的数据 4、通过管理对象来操作数据库 5、跨数据库的无缝移植(就是可以直接换数据库比如原先项目用的是mySql后面项目转...

qq_43059674的博客 365

Hibernate初学之CURD

Hibernate初学之CURD 以前学过JDBC的增删改查,感觉挺方便的,用hibernate框架则会更加简便, 关于hibernate的增删改查模块,我感觉用代码解释再合适不过了; 首先是导包问题:应用hibernate需要导十个包: 这些包在大部分是在hibernate资源 里面,这个可以到官网上下载; 接下来是配置文件:  这些都讲过了:hibernate.cfg.

维生素&的专栏 2399

Hibernate的基本概念和CURD

基本概念ORM框架 ——hibernate1.开源的持久层框架. 2.ORM(Object/Relational Mapping)映射工具,建立面向对象的域模型和关系数据模型之间的映射. 3.连接java应用和数据库的中间件. 4.对JDBC进行封装,负责java对象的持久化. 5.在分层结构中处于持久化层,封装对数据库的访问细节, 使业务逻辑层更专注于实现业务逻辑Hibernate

C. 499
上一篇: Hibernate课程详解
下一篇: hibernate核心接口
日依
博客等级 码龄15年 165粉丝 165原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值