您的位置 首页 java

软件开发_java操作Mysql数据库

前言

近期自己构建了一个java springboot项目,数据库读写环节,我陷入了沉思。java读写数据库我是使用jpa呢?还是mybatis呢?

求道

1、回顾历史:

  • 原始时代:jdbc时代,自己构建Connection,Statement,读取ResultSet。
  • SSH时代:ssh黄金组合,Hibernate ORM风靡,各种One to many,many to many及一二级缓存搞晕了,使用简单,深入了解还是有些门槛。
  • Mybatis: 一款优秀的持久层框架,可通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

2、上下求索

  • 早期直接jdbc,简单直接,没有什么连接池,程序员自己管理。软件的复用性太差。
  • 后来用了hibernate,很容易上手,对于复杂的场景配置起来比较麻烦。门槛高,执行效率低。
  • 再后来,接触了mybatis,通过xml配置,只要会sql就可以搞定,有点小惊喜。门槛低,自己编写xml太繁琐。
  • 再后来,接触了jpa,太他妈简单了,自动创建表,通过规则自动创建查询或更新语句,也可通过SQL进行扩展。简洁,国外广泛使用,执行效率低一些。
  • 再后来,接触了mybatis-generator可以生成通用的mybatis的xml语句。阿里内部有个Aligenerator对其进行了扩展,可以对复杂的查询封装了Criteria。所幸找到了与其类似的IDEA插件better-mybatis-generator,每个表对于一个*Example,也是封装了Criteria对象。

涅槃

兜兜转转10多年开发,jdbc已经是过去式了;jpa很简洁,数据量大的时候,担心其效率问题(可能通过其他高级语法来解决),未深入研究;mybatis是我最喜欢的方式,也可能跟某段公司经历有关系吧,且通过better-mybatis-generator插件完美了把低门槛和高复用结合起来,那就别纠结了,就它了,挺好。

以上就是我对ORM的选型心励路程,mybatis+better-mybatis-generator,你是否有更好选择推荐。

文章来源:智云一二三科技

文章标题:软件开发_java操作Mysql数据库

文章地址:https://www.zhihuclub.com/170597.shtml

关于作者: 智云科技

热门文章

网站地图