Spring Data JPA 与 MyBatis简单对比
点击上方蓝色字体,选择“标星公众号”
优质文章,第一时间送达
JPA默认使用hibernate作为ORM实现,所以,一般使用Spring Data JPA即会使用hibernate。我们再看看hibernate的官方概念,Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
面向对象考虑的是对象的整个生命周期包括在对象的创建、持久化、状态的改变和行为等,对象的持久化只是对象的一种状态,而面向关系型数据库的概念则更关注数据的高效存储和读取; 面向对象更强调对象状态的封装性,对象封装自己的状态(或数据)不允许外部对象随意修改,只暴露一些合法的行为方法供外部对象调用;而关系型数据库则是开放的,可以供用户随意读取和修改关系,并可以和其他表任意的关联(只要sql正确允许的情况下); 面向对象试图为动态的世界建模,他要描述的是世界的过程和规律,进而适应发展和变化,面向对象总是在变化中处理各种各样的变化。而关系型模型为静态世界建模,它通过数据快照记录了世界在某一时候的状态,它是静态的。
分析、抽象和归纳出系统中的业务概念,并梳理出各个业务概念之间的关系——创建概念模型 根据概念模型,进一步细化设计系统中的对象类以及类的依赖关系——创建设计模型 将设计好的类映射到数据库的表和字段配置好 hibernate可以根据配置信息自动生成数据库表,这个时候也可以集中精力去梳理一下表关系,看看表结构是否合理,并适当调整一下类和表的映射关系,重新生成表结构
综合整个系统分析出系统需要存储的数据项目,并画出E-R关系图,设计表结构 根据上一步设计的表结构,创建数据库、表 编写MyBatis的SQL 映射文件、Pojos以及数据库操作对应的接口方法
作者 | 华华lucky
来源 | jianshu.com/p/3927c2b6acc0
评论