MyBatis很落后吗

Mybatis到2020年,还是用得很多的,Struts2到2020年,用的人就没几个了(除了老项目)。
如果让我加入一家公司,写的是Struts2的,那我还是多面面,找找别的机会了。
前言Mybatis应该是国内用得最多的「数据访问层」框架了,我看了我司的好几个系统,基本都是用Mybatis的。
实话实说,我对Mybatis没有很深入的了解,也仅仅是处于「会用」的阶段上。日常的要加张表,加个字段就是写写DAO/Mapper

MyBatis很落后吗


为什么没有深入去研究Mybatis的原因很可能是面试其实问得不是特别多,起码我在校招的时候面了很多家公司,也没怎么问我Mybatis的。
Mybatis如果仅仅是要「会用」,入门是非常快的,感觉两三天就可以搞好了。

MyBatis很落后吗


认识Mybatis在前阵子已经总结过了JDBC了,无论是什么的ORM框架(Object Relation Mapping)其实都是在JDBC上封装了一层,底层用的都是JDBC的代码。
众所周知,直接写JDBC的代码的效率是最高的。那为什么要用ORM框架呢??
回想起我第一次实习看到公司代码时的感受:「卧槽,代码怎么这么多啊。这为什么有这么多的包啊,一直点开都有」

MyBatis很落后吗


如果纯用JDBC,只要项目是有点规模的,那我们的项目里代码量一定会很多。最重要的是,很多的代码都是重复的。如果我们的项目里边积累了这么多的重复代码,最致命的问题就是「不好维护」
于是就有了这么多的ORM框架,至于用哪一个ORM框架,我觉得没有对错之分,公司用哪个你就用哪个就好了。
【MyBatis很落后吗】 毕竟技术都是服务于业务,公司在选型的时候,选了某ORM框架,肯定也有当时的一个考虑。等到真的是由于使用了某ORM框架导致无法承接掉业务的时,那自然而然就会有优化。
在上有很多「Mybatis与Hibernate/SpringData JPA」的对比,有兴趣的小伙伴可以去学习学习,看着大佬们的「回答/讨论」还是能学到不少的东西的。

MyBatis很落后吗


Mybatis作为一个ORM框架,在市面上非常受欢迎,只要有JDBC基础,学会用很简单。
不BB了,开始吧。

MyBatis很落后吗


入门使用Mybatis的步骤大致如下:

MyBatis很落后吗


首先我们需要配Mybatis的一份配置文件,这份配置文件主要配置数据库相关的信息:

MyBatis很落后吗


随后,我们编写一个工具类来获取sqlSession,这个SQLSession相当于JDBC的Connection对象

MyBatis很落后吗


然后编写我们的映射文件,这个映射文件实际上就是对象与数据库的映射关系:

MyBatis很落后吗


推荐阅读