JPA、Hibernate入门及实战

一、JPA

概念:
  • JPA(Java Persistence API):对象持久化API,是官方定制的一套ORM规范
  • ORM(Object Relational Mapping):对象关系映射,通过实体类操作数据库表的一种设计思想
JPA作用:
  • 简化数据库访问
  • 屏蔽下层不同数据库的SQL差异,做到一套代码兼容多套数据库
JPA实现过程
  • 首先通过注解或xml描述实现实体类与数据库表的映射关系
  • 然后通过对实体类的操作进行CRUD(通过映射关系生成SQL语句操作数据库)
JPA主要实现
  • Hibernate (性能最好,最常用实现)、EclipseLink、OpenJPA、TopLink
JPA核心
核心 介绍
实体类(Entity) JPA中的实体类是与数据库表对应的Java类。它使用注解来标识实体类与数据库表之间的映射关系,包括表名、字段名、关系等
实体管理器(EntityManager) 实体管理器是JPA的核心接口之一,它负责管理实体类的生命周期,包括插入、更新、查询、删除等操作。通过实体管理器,开发人员可以进行数据库操作
持久化上下文(Persistence Context) 实体对象与数据库之间的中间缓存,可管理实体对象的变化并将变化持久化到数据库中。在JPA中,每个实体管理器都有一个持久化上下文
数据访问对象(DAO) 数据访问对象是一个用于封装数据库操作的接口。通过DAO,开发人员可定义CRUD操作数据库

二、Hibernate

Hibernate概念
  • Hibernate:是JPA的主要实现,实体对象与表的关系映射框架
Hibernate重要特点
  1. 简化数据库操作:绑定好实体对象与表的映射关系后,可通过提供的简易API直接操作数据库,不用写SQL
  2. 跨数据库支持:屏蔽不同的数据库SQL差异,可做到一套代码兼容多套数据库
  3. 高性能:采用了如缓存,延迟加载等一系列的性能优化策略,可提高数据访问效率
  4. 事务管理:Hibernate提供了事务管理机制,可通过简单API来管理事务,确保数据的一致性和完整性
  5. 易于扩展:提供了灵活的对象与表的映射策略,支持自定义SQL,支持插件,提供了拦截器,事件监听器等扩展点
Hibernate结合Spring Boot深入实践
1)pom.xml文件中添加依赖:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-cache</artifactId>
</dependency>
2)配置数据库连接信息。在application.properties文件中添加以下内容:
spring.datasource.url=jdbc:mysql://localhost:3306/example_db
spring.datasource.username=root
spring.datasource.password=your_password
spring.jpa.hibernate.ddl-auto=create

3)创建一个User实体类,包括映射关系及懒加载:
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值