Spring框架学习

Hibernate框架

使用此概念可以不用大量的书写sql语句代码,sql语句被封装起来,直接在底层调用使用即可。
  • 分层体系结构
指的是将系统的组件分隔到不同的层中,每一层中的组件应保持内聚性,
并且应大致在同一抽象级别; 每一层都应与它下面的各层保持松散耦合。

内聚性指的是单一的类、单一的包、单一的包、单一的模块,具有独立性
耦合性的关键字是:依赖
软件设计中建议使用低耦合性

在这里插入图片描述
层与层之间存在自上而下的依赖关系,也就是上层组件hi访问下层组件的API,但是下层组件不应该依赖上层组件。

  • 持久化层的由来以及概念
由来:
是为了把数据访问细节和业务逻辑分开,可以把数据访问作为单独的持久化层。
(DAO层,纯粹的增删改查方法)

概念:
瞬时状态:保存在内存的程序数据,程序退出后,数据就消失了,称为瞬时状态。
持久状态:保存在数据库(磁盘)的程序数据,程序退出后,数据依然存在,称为程序数据的持久状态。
持久化:将程序数据在瞬时状态和持久化状态之间转换的机制。

在这里插入图片描述

  • 持久化层的作用
持久化层封装了数据访问细节,为业务逻辑层提供面向对象的API,使业务逻辑层可以专注于实现业务逻辑。
  • **MVC设计模式与四层结构的对应关系及区别
    **
    在这里插入图片描述
  • 对象-关系映射(Object Relational Mapping,简称ORM)
不直接操作SQL语句(java域模型),而是通过访问实体类对象(数据模型)

一般情况下,一个持久化类和一个表对应,类的每个实例对应表中的一条记录
在这里插入图片描述

  • Hibernate发展
  • 概念
在分层体系结构中Hibernate位于持久层,是完成对象持久化的持久层框架;
Hibernate是连接Java应用程序和关系型数据库的框架,能够建立对象模型和关系数
据模型之间的映射,是一种自动ORM框架;
Hibernate是对JDBC API的封装,是JDBC轻量级封装框架。

不需要手动编写SQL语句,而是操作封装类的对象
  • Hibernate的优点
Hibernate实现了ORM,使Java程序员可以方便的运用面向对象的编程思想来操纵关系型数据库;

Hibernate是对JDBC的封装,增强了代码的重用性,简化了代码,提高了编程效率;

Hibernate是对JDBC的轻量级封装,必要时Java程序员可以绕过Hibernate直接访问JDBC API;

Hibernate不仅可以应用在独立的Java程序中,还可以应用在Java  Web项目中,可以和多种Web服务器集成,并支持多种数据库平台。
  • 创建Hibernate项目的步骤
 - 安装Eclipse、Mysql;
 - 下载Hibernate,并解压缩;
 - 使用Eclipse创建新的项目;
 - 引入Hibernate及其依赖库(jar包);
 - 引入Mysql数据库驱动包;
 - 编写Hibernate配置文件;
 - 创建Java持久化类XXX.java;
 - 编写持久化类的映射配置文件XXX.hbm.xml;
 - 使用Hibernate API 完成对象的持久化。

3.导入Hibernate及其依赖库(jar包)
在这里插入图片描述
在这里插入图片描述
5.编写hibernate配置文件
1.核心配置文件
2.映射文件(先创建实体类再编写映射文件)
在这里插入图片描述
在这里插入图片描述
Hibernate官网:http://hibernate.org/orm/

  • **项目目录结构说明
    **
    在这里插入图片描述
1.持久化类:Product.java
2.持久化类的映射文件:Product.hbm.xml
3.Hibernate的配饰文件:hibernate.cfg.xml
4.Hibernate的jar包、MYSQL jar 文件:lib
  • 创建持久化类
持久化类:指其实例需要被Hibernate持久化到数据库中的类即实体类
private 类型属性;
public 类型的 setter 和 getter 方法;
public 或 protected 类型的无参数的构造方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值