Spring里操作数据库有很多方案,Hibernate、JPA、Mybatis、JDBCTemplate、Spring Data JPA、Ktorm等等

作为一个用Kotlin来写Android应用的开发,面对这么多方案,我该选什么方案呢?

Java版本的ORM

首先可以参考一下 微信公众号“方志朋”上的一篇文章:
数据持久化框架为什么放弃Hibernate、JPA、Mybatis,最终选择JDBCTemplate!
为什么老外不愿意用 MyBatis?

由于目前国内多数采用Mybatis-Plus,这里整理了一些文章:

跟我学Springboot开发后端管理系统2:Mybatis-Plus实战
跟我学Springboot开发后端管理系统3:Mybatis-Plus实战2

Spring Boot基础教程系列 (见程序猿DD的微信公众号)
Spring Boot 2.x基础教程:MyBatis的多数据源配置

Spring Boot 2.x基础教程:默认数据源Hikari的配置详解
Spring Boot 2.x基础教程:使用国产数据库连接池Druid
跟我学Springboot开发后端管理系统4:数据库连接池Druid和HikariCP

Kotlin版本的ORM

异步、非阻塞的响应式数据库规范

Java 响应式关系数据库连接了解一下
只会JDBC连接MySQL?来试试R2DBC吧

总结:
无论 ADBA 还是 R2DBC 都不是为了取代 JDBC 。只是为了补充在响应式编程下的空白。至于响应式的未来如何,目前还不是很明朗,但是发展很迅速,我还是很看好的。就目前来说 ADBA 具有官方加持的优势,而 R2DBC 具有活跃的社区优势,究竟谁是业界规则的领导者,相信很快就会揭晓。

对于刚入门的我来说,还是先复习好SQL语言,然后多研究一下Mybatis-Plus,以及阿里开源的数据库连接池Druid,
然后后面有精力再学习一下非关系型数据库Redis,至于响应式的ORM,研究下面这两个就行了:

  • jasync-sql:Java和Kotlin的R2DBC包装器,用Kotlin编写的MySQL和PostgreSQL异步数据库驱动程序。
  • r2dbc-mysql:为MySQL实现的原生驱动程序。
如果觉得我的文章对你有用,请随意赞赏