论orm框架 和 mybaties的优缺点总结

1 .简单描述orm框架
开发处处出现orm,我们用的像以前的 hibernate,jpa,甚至go语言的orm。
1-2 常见的使用方式
我们常见的orm都是基于数据库模型映射而出来的一种关系型框架,所以我们出现的orm框架都是基于我们的crud进行建立起来的,其附带的疯转sql,让我们节省了大量的sql语句的编写,比如像hibernate我们通过注解构建的实体类,可以通过一对一,多对一的关系,查询带出来相关的数据关系信息。
1-3 orm的优点
个人认为 只要我们可以驾驭住orm框架,能熟练掌握orm可以让我们的开发事半功倍。
1.适合用于我们常见的小项目开发的,业务数据关系不那么强的开发。
2.只需要维护好对应的实体类进行开发,一旦业务变更我们只需要修改orm模型就可以。
3.节省代码量,达到无需sql开发的地步。
4.适合管理系统的开发,少用户的,性能要求不高的一些产品。
5.可以把大量的orm对象加载到内存当中进行逻辑运算,可以大大减少了db的操作。
1-4 orm的缺点
个人认为orm的缺点同样是比较明显的

  1. 业务上的复杂sql查询,比如像 left join ,外键关联 , 还有原生sql的一些函数比如像 max min 等数学运算函数,还有需要计算的业务数据。
  2. 从sql的性能上我们还能知道,毕竟是封装的大家可以打印出orm的底层sql语句,其实底层的sql语句多半是性能好差的,当遇到数据量大的查询,或许并不存在什么高性能的优点,执行起来效率还是比较低的。

2 介绍mybaties的使用
mybatis受到广大程序员的喜欢。。
2-1 使用方式
通过注解的方式,和原生xml的方式去使用该框架,对应相关的接口类的配置,小编认为其实还是好简单的,现在流行的springboot框架集成起来,用起来还是比较容易的。
2-2mybaties的优点
1.原生的sql可以针对各种复杂的业务场景开发的业务需求。
2.原生的sql可以容易的优化查询的sql性能,可以快速的利用索引来增加查询的速度,我这里指的是流量大,客户量多的一种常见场景。
3.程序员只需要关心sql语句的开发,但是需要程序员有一门熟悉的sql语法记忆。
2-3 mybaties的缺点
1.对db的性能开销比较大,因为不排除一些sql函数的使用,导致数据库的压力增加。
2.对后期项目的重构,拓展的难度增大,后期也许是要改大量的sql语句才可以满足相关的业务需求,因为原生的sql是一种耦合度好大的开发模式,所以需要慎用。

总结:
其实用什么不重要,orm或者是mybatis ,我们需要的是一个善于解决问题的最优方式,我们只能尽量避免技术的短板来取其优点来使用。这是我程序人生的第一篇博客,需要学习的点好多,也希望大佬们可以多多带我飞,文章只是个人的片面见解,有补充的可以在评论区进行留言或者一起探讨。