Java学习第八十二部分——JPA

目录

一、前言介绍

二、核心特点

三、主要组件

四、优势长处

五、查询方式

六、应用场景

七、总结归纳


一、前言介绍

       JPA(Java Persistence API)是Java EE和Jakarta EE中的ORM(对象关系映射)标准规范,用于简化Java应用程序与数据库的交互。

二、核心特点

  • 标准化ORM框架:统一了Java中的数据库访问方式

  • 面向对象操作:开发者主要操作Java对象而非SQL语句

  • 注解驱动:通过注解配置对象与表的映射关系

  • 内置缓存:提供一级缓存(持久化上下文)

  • JPQL语言:面向对象的查询语言

三、主要组件

1. 实体类(Entity):使用`@Entity`注解的普通Java类,对应数据库表

   @Entity
   @Table(name = "users")
   public class User {
       @Id
       @GeneratedValue
       private Long id;
       private String name;
       // getters/setters
   }

2. EntityManager:核心接口,负责实体对象的CRUD操作

   // 保存实体
   entityManager.persist(user);
   // 查询实体
   User user = entityManager.find(User.class, 1L);

3. 持久化单元(Persistence Unit):在persistence.xml中配置的数据源和实体类集合

注解用途
@Entity声明持久化类
@Table指定映射的表名
@Id标识主键
@GeneratedValue主键生成策略
@Column字段与列映射
@OneToMany一对多关系
@ManyToOne多对一关系

四、优势长处

  • 开发效率高:减少约70%的JDBC样板代码

  • 可移植性强:支持多种数据库(Hibernate/EclipseLink等实现)

  • 自动优化:延迟加载、缓存管理等

  • 类型安全:编译时检查代替运行时SQL错误

五、查询方式

1. JPQL查询

   TypedQuery<User> query = em.createQuery(
       "SELECT u FROM User u WHERE u.age > :age", User.class);
   query.setParameter("age", 18);

2. Criteria API:类型安全的编程式查询
3. 原生SQL查询:复杂场景下的SQL直接调用

六、应用场景

  • Spring Data JPA的底层规范

  • 企业级应用的持久层解决方案

  • 需要快速开发的数据库应用

  • 需要切换数据库的项目

七、总结归纳

       JPA通过抽象化数据库操作,让开发者能更专注于业务逻辑而非数据访问细节。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值