springBoot6-4 数据访问--Mybatis和JPA对比总结

本文是对SpringBoot中Mybatis和JPA数据访问框架的初步学习和对比总结。理论对比上,JPA是Springboot的数据访问框架,基于Hibernate实现,面向对象;而Mybatis则更面向关系,专注于数据存取。在具体使用中,两者都需要配置数据库和数据源,定义实体类。Mybatis通过@Mapper接口操作,JPA则借助JpaRepository接口。配置文件方面,Mybatis注解配置简洁,而JPA配置相对复杂。

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

初学JPA和Mybatis 进行小小的总结

理论上的对比:
JAP 是Springboot 自带的处理数据访问的框架,是springdata 的一个子模块;springboot 中JPA的默认实现是:Hibernate ;所以本质上要对比的就是:Hibernate和Mybatis
Hibernate:

我们再看看hibernate的官方概念,Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行非常
轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动
生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

Mybatis

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有
的JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,
将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

从本质上来看来个框架的区别还是很大的:Mybatis 是面向关系的;JPA是面向对象的:面向对象致力于解决计算机逻辑问题,而关系模型致力于解决数据的高效存取问题

更详细的分析:https://blog.youkuaiyun.com/yunzhonmghe/article/details/78069449

从概念到使用方法:

  1. 都要进行基本的数据库,数据源的配置

  2. 编写实体类
    Mybatis 使用实体类来进行结果集的封装,JPA中实体类和数据库中的数据表绑定,JPA自动创建数据表,查询进行结果集的封装

  3. Mybatis :编写 接口@Mapper【加上@Respository 】
    编写方法和sql 语句(注解版) || 编写方法,配置文件(配置文件版,在配置文件中编写sql 语句)
    JPA:编写xxxRepository接口:继承JpaRepository
    这是主要的部分(web 项目框架中的Dao 层)

  4. 配置文件的完善
    mybatis 使用注解完成数据访问需要的配置文件部分只有: 数据源的配置使用文件初始化数据库的文件【xx.sql/schema.sql】

    mybatis 使用配置文件玩昵称数据访问的配置文件部分: 数据源配置mybatis-config.xml 全局配置,xxxMapper.xml sql 语句映射配置,还要在application.yml 配置上全局配置和sql 映射文件的位置

    JPA中的配置文件: 数据源配置在appliction.yml 文件中配置数据表的创建方式和其他你想要的配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值