Hibernate基础语义

本文介绍了Hibernate框架中的三个核心组件:Configuration、SessionFactory 和 Session,并详细解释了它们的作用及如何使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hibernate基础语义

 

Configuration:

Configuration类负责管理Hibernate的配置信息。Hibernate运行时需要获得一些底层实现的基本信息,关键属性包括:

1.数据库 URL

2.数据库用户

3.数据库用户密码

4.数据库JDBC驱动

5.数据库dialect:用于对特定数据库提供支持,其中包含了针对特定数据库特性的实现,如Hibernate数据类型到特定数据库类型的映射等。

 

使用Hibernate必须首先提供这些基础信息以完成初始化工作,为后续操作数据库做好准备。这些属性在hibernate配置文件(hibernate.cfg.xml or hibernate.properties)中加以设定。

当我们调用

 Configuration config = new Configuration().configure();

时,Hibernate会自动在当前的CLASSPATH中搜寻hibernate.cfg.xml文件并将其读入到内存中作为后续操作的基础配置。Configuration类一般只有在获取SessionFactory时需要涉及,当获取SessionFactory之后,由于配置信息已经由Hibernate维护并绑定在返回的SessionFactory之上,因此一般情况下无需在对其进行操作。

 

我们也可以指定配置文件名,如果不希望使用默认的hibernate.cfg.xml作为配置文件的话,

 

   File file = new File("c://sample//myhibernate.xml");
   Configuration config1 = new Configuration().configure(file);

 

以上方式也可获得Configuration对象。

 

 

SessionFactory:

SessionFactory负责创建Session实例。可以通过Configuration实例来构建SessionFactory。

 

Configuration实例config会根据当前的配置信息,构造SessionFactory实例并返回。SessionFactory一旦构造完毕,即被赋予特定的配置信息。也就是说,之后config的任何变更不会影响到已经创建的SessionFactory实例,如果需要使用变更后的config实例的SessionFactory,需要从config重新构建一个SessionFactroy。

 

Session:

Session是持久层操作的基础,相当于JDBC中的Connection。

Session实例通过SessionFactory实例构建:

 

之后我们就可以调用Session所提供的save,find,flush等方法完成持久层操作。

 

下面为完整示例代码:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值