Hibernate是怎么工作的——Hibernate的工作流程

告别盲打:为NXOpen Python API生成智能代码提示的完整指南 本文提供了一份为NXOpen Python API生成智能代码提示的完整指南。通过配置匹配的Python环境、利用类型存根文件生成工具创建.pyi文件,并在PyCharm或VSCode中正确配置,开发者可以彻底告别“盲打”,获得精准的代码补全和参数提示,从而大幅提升NX二次开发的效率和体验。 阅读详情

举个简单的例子说明:

1.Base.java

 

package cn.flymouse.hibernate;

import java.util.Date;


import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import cn.flymouse.hibernate.domain.User;

public class Base {

	public static void main(String[] args) {
		//读取并解析配置文档hibernate.cfg.xml文件
		Configuration cfg = new Configuration().configure();
		//读取并解析映射文件,以Configuration创建SessionFactory
		SessionFactory sf = cfg.buidSessionFactory();
		//创建session
		Session session = sf.openSession();
		//开启事务
		Transaction tx = session.beginTransaction();
		//持久化操作
		User user = new User();
		user.setBirthday(new Date());
		user.setName("name");
		session.save(user);
		//提交事务
		tx.commit();
		//关闭Session
		session.close();
		//关闭SessionFactory
		sf.close();
	}
}


2.User.java

 

 

package cn.flymouse.hibernate.domain;

import java.util.Date;

public class User {
	private int id;
	private String name;
	private Date birthday;

	public int getId() {
		return id;
	}
	pubilc String getName(){
		return name;
	}
	public Date getBirthday() {
		return birthday;
	}
	
	public void setId(int id) {
		this.id = id;
	}
	public void setName(String name) {
		this.name = name;
	}
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
}


3.User的映射文件User.hbm.xml(跟User类放同个目录): 

 

 

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
	"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="cn.flymouse.hibernate.domain">

	<class name="User">
		<id name="id">
			<generator class="native" />
		</id>
		<property name="name" unique="false"/>
		<property name="birthday" />
	</class>
	
</hibernate-mapping>


4.hibernate的配置文件hibernate.cfg.xml(放在类路径下,即src目录下): 

 

 

<!DOCTYPE hibernate-configuration PUBLIC
	"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
	<session-factory>
		<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
		<property name="connection.url">jdbc:mysql:///test</property>
		<property name="connection.username">root</property>
		<property name="connection.password">123456</property>
		<!-- 方言,用于生成SQL语句 -->
		<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
		<!-- 自动建表 -->
		<property name="hbm2ddl.auto">create</property>
		<property name="show_sql">true</property>
	
		<mapping resource="cn/flymouse/hibernate/domain/User.hbm.xml"/>
	</session-factory>
</hibernate-configuration>

 

 

 

 

 

15、电科院FTU检测标准学习笔记-基本性能 作者简介:本人从事电力系统多年,岗位包含研发,测试,工程等,具有丰富的经验在配电自动化验收测试以及电科院测试中,本人全程参与,积累了不少现场的经验。 阅读详情

相关推荐

RFSOC实战解析(一):深入RF Data Converter的时钟与数据接口设计

本文深入解析RFSOC中RF Data Converter的时钟与数据接口设计,涵盖GHz采样、数据流处理、时钟树同步及AXI-Stream接口实战。通过详细案例和调试技巧,帮助工程师高效配置IP核,优化ADC/DAC性能,解决跨时钟域和信号完整性等关键问题。

weixin_30955617的博客 473

hibernate面试题

一、Hibernate工作原理: 读取并解析配置文件 读取并解析映射信息,创建SessionFactory 打开Sesssion 创建事务Transation 持久化操作 提交事务 关闭Session 关闭SesstionFactory   二、Hibernate有什么好处: 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。 Hibernate是一

848

FPGA串口通信----uart(一)

通过PLL锁相环IP的使用,可以输入时钟进行分频,倍频,也可以产生多路时钟输出信号。外部提供晶振的原因:①Fpga电路大多数需要时序分析②晶振在Fpga内部占空间大,所以放置于外部PCB板上Uart异步传输速率不能很快的原因:考虑到工程实际问题,假如时钟周期大(传输速率慢的话),采取到数据电平变化的边沿时刻的概率会小很多,这样数据也很准确,通常uart适用于2M.

mvpkuku的博客 970

hibernate的工作原理

1、hibernate 简介:          hibernate是一个开源框架,它是对象关联关系映射的框架,它对JDBC做了轻量级的封装,而我们java程序员可以使用面向对象的思想来操纵数据库。 hibernate核心接口 session:负责被持久化对象CRUD操作 sessionFactory:负责初始化hibernate,创建session对象 configuration:负责配置并启...

皓月星辰 3663

从SolidWorks到URDF:插件使用、关节配置与PyBullet仿真避坑指南

本文提供了一份从SolidWorks导出URDF模型并导入PyBullet进行仿真的完整实战指南。详细讲解了SolidWorks插件的正确安装与配置、关节类型的选择与坐标系对齐的核心技巧,并针对PyBullet仿真中常见的模型散架、路径错误、物理属性异常等问题提供了深度避坑解决方案,帮助机器人开发者高效完成从设计到仿真的全流程。

weixin_29081101的博客 543

更新|芒果YOLOv8改进182:注意力机制MLLA:即插即用|融合 Mamba 设计精髓的线性注意力视觉Transformer

芒果YOLOv8改进:即插即用,最新注意力机制MLLA:融合 Mamba 设计精髓的线性注意力视觉Transformer

包括YOLOv5、YOLOv7、YOLOv8等模型改进 865

Hibernate的执行流程

在hibernate开发的过程中通常会用到5个核心接口,分别为Configuration接口、SessionFaction接口Session接口、Transaction接口和Query接口。通过这些接口可以对持久化对象进行操作,还可以进行实物的控制。                先来看看hibernate的执行流程图 (1)初始化hibernate,构建hiberna

技术从心 1116

FineReport 动态列切换统计维度

目标: 自己选择统计维度进行数据的汇总统计数据集参数实现动态列。

Davina_yu的博客 1053

hibernate的工作原理以及为什么使用

原理: 1.通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件 2.由hibernate.cfg.xml中的读取并解析映射信息 3.通过config.buildSessionFactory();//创建SessionFactory 4.sessionFactory.openSession();//打开Sesssion 5.se

m0_37939000的博客 355

华为od 面试八股文_操作系统_01_含答案

华为od 面试八股文_操作系统_01_含答案

MISAYAONE的博客 3275

【WRF-Chem工具】anthro_emiss 详解:生成人为排放数据

anthro_emiss 详解:生成人为排放数据

WW、forever的博客 2055

hibernate中文网相关图形、笔记

1、hibernate启动流程图 内容来源:1 Hibernate入门 1.2. 第一部分 - 第一个Hibernate应用

aiwokache的博客 249

Java语音革命:用代码打造永不疲倦的AI客服,让客户支持效率飙升300%!

客户支持领域常面临“薛定谔困境”,即无法预知客户来电的意图是投诉还是表扬。通过Java技术,尤其是语音识别和自然语言处理(NLP),可以有效解决这一问题。文章展示了如何利用Java代码构建“声纹量子引擎”,实现客户支持的自动化。核心技术包括录音与预处理、语音识别和语义理解。通过百度AI API和Stanford NLP,系统能够快速、准确地识别客户语音并理解其意图。数据表明,优化后的AI处理时间从15分钟缩短至18秒,语音识别准确率提升至98.5%,并发处理能力达到单实例1000+请求。这些技术显著提升了客

墨夶的博客 1035

hibernate的工作流程

1.加载主配置文件:hibernate.cfg.xml,配置文件中有这个加载实体的hbm.xml文件,这个hbm.xml文件是实体与数据库的关系映射文件 Configuration configuration =new Configuration().configure("hibernate.cfg.xml"); 2.创建SQLsessionFactory工厂 Session session = sessionFactory.openSession(); 3.创建session对象 Sess

A_com_Z的博客 433

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Hibernate工作流程和环境搭建

Hibernate工作流程和环境搭建 一.Hibernate的工作流程 1.读取并解析配置文件 Configuration con=new Configuration().config(); 2.读取并解析映射信息,创建sessionFactory seesion工厂 SessionFactory sessionFactory=con.buildSessionFactory(); 3.打开ses...

qq_36760873的博客 311

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Hibernate 工作流程

研究了两天的 Hibernate,看了很多资料,也拜读了其关键类,感觉自己有很多地方需要学习。比如说Hibernate的缓存机制是怎么实现的,Hibernate在封装JDBC和JTA时都做了些什么,其ORM是怎么实现的等等。要弄清这些东西估计需要很长时间的摸索和积累,也只有在实际应用中不断加深对它们的理解了:)下面,我将最近两天的收获总结一下,主要叙述一下Hibernate的基本工作原理。对于Hi

Jamesz' Blog 2318

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

struts和hibernate工作流程

struts工作流程1>启动struts框架,web.xml,创建ActionServlet对象,立即调用init(),解析struts-config.xml2>view发送*.do请求3>ActionServlet接受该请求,去掉.do后缀,在struts-config.xml文件中找元素path属性.a>如果没有找到404错误;b>如果找到继续执行4>判断是否需要表单封装页面数据.name属性

caohong168的专栏 910

Hibernate工作流程

Hibernate创建步骤 (五大核心接口:Configuration/SessionFactory/Session/Transaction/Query) 1.新建工程,导入需要的jar包。 2.利用MyEclipse自动生成功能在工程中创建hibernate.cfg.xml配置文件和  HibernateSessionFactory.java工具类。生成的主要内容如下: hiber

启程 1万+

Hibernate的工作流程及使用的好处

Hibernate是一个ORM框架,ORM全称Object/Relation Mapping,翻译为对象关系数据库映射,这类框架的基本作用是完成面向对象的编程语言到关系数据库的映射,是的开发者可以采用完全面向对象的方式来开发应用程序。      Hibernate的工作流程:          1. 通过Configuration cfg = new Configuration().conf

小超人的专栏 2963

hibernate初步印象- 工作流程

<br /><br /> hibernate工作流程<br /><br />www.hibernate.org

孙健的专栏 496

Hibernate的工作流程及SessionFactory的理解

Hibernate是一款ORM全自动框架。其优点是提高了开发效率,使得操作数据库的时候,可以以面向对象的方式来完成,不需要书写SQL语句。 ORM: Object Relational mapping 对象关系映射 Hibernate的工作流程: 工作流程: 1.读取并解析配置文件。[ 创建Configuration实例,其构造函数将配置文件(Hibernate.cfg.x...

曰业而安的博客 344

Hibernate工作流程、优点、缓存机制

1.Hibernate工作流程 启动hibernate,构建Configuration实例,初始化改实例中的所有变量。(Configuration cfg = new Configuration().configure(); )Configuration实例读取并解析配置文件hibernate.cfg.xml,将该对象的映射信息加载至内存。备:一个Configeration 实例代表Hi

段延锐的专栏 947

Hibernate的工作流程以及三种状态

Hibernate的工作流程: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Sesssion 4.创建事务Transation 5.持久化操作 6.提交事务 7.关闭Session 8.关闭SesstionFactory Hibernate中bean的三种状态 Hibern...

weixin_30268071的博客 94
上一篇: 基于Struts2+Hibernate的学生信息管理系统实例
下一篇: Java基础——equals和==号比较
冷静BB
博客等级 码龄12年 298粉丝 112原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值