今日学习之Hibernate(一)

1.什么是持久化:

狭义的理解: “持久化仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。

●     保存:把域对象永久保存到数据库。

●     更新:更新数据库中域对象的状态。

●     删除:从数据库中删除一个域对象。

●     加载:根据特定的OID,把一个域对象从数据库加载到内存。

●     查询:根据特定的查询条件,把符合查询条件的一个或多个域对象从数据库加载内在存中。

2.为什么要持久化?

持久化技术封装了数据访问细节,为大部分业务逻辑提供面向对象的API

● 通过持久化技术可以减少访问数据库数据次数,增加应用程序执行速度。

● 代码重用性高,能够完成大部分数据库操作。

● 松散耦合,使持久化不依赖于底层数据库和上层业务逻辑实现,更换数据库时只需修改配置文件而不用修改代码。

1.web层:struts2框架

2.service层:spring框架

3.dao层:hibernate框架:对数据库进行crud操作:增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)

 注意点:add jar 包-build to path。

3.事务具有四个特征(ACID) :
1 、原子性 ( Atomicity )
事务是数据库的逻辑工作单位,事务中包含的各操作要么都成功,要么都失败。 
2 、一致性 ( Consistency )
当数据库只包含成功事务提交的结果时,保证数据库数据处于一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。 
3 、隔离性 ( Isolation )
一个事务的执行和其他事务相互独立。即一个事务内部的操作及使用的数据对其它并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 
4 、持续性 ( Durability )
数据的持久化,也称永久性,事务提交后,它对数据库中的数据的改变就应该是永久性的。接下来的其它操作或故障不应该对其执行结果有任何影响。 

Hibernate映射配置文件:

1.映射配置文件名称和位置没有固定要求。

2.映射配置文件中,标签name属性值写实体类相关内容。

(1)class标签name属性值实体类全路径    (2)id标签和property标签name属性值 实体类属性名称

3.id标签和property标签,column属性可以省略的。

(1)不写值和name属性值一样的

4.property标签type属性,设置生成表字段的类型,自动对应类型

Hibernate核心配置文件:

1.配置写位置要求

2.配置三部分要求

(1)数据库部分必须的   (2)hibernate部分可选的   (3)映射文件必须的

3.核心配置文件名称和位置固定的

(1)位置:src下面   (2)名称:hibernate.cfg.xml

 

一个项目一般创建一个sessionFactory对象。

具体实现:写工具类,写静态代码块实现。

* 静态代码块在类加载时候执行,执行一次。

猜你喜欢

转载自blog.csdn.net/qq_42773718/article/details/82586533