BDUtilsMyBatis,Hibernate区别

沃德牛至先生 / 2023-09-04 / 原文

他们都基于ORM

DBU的sql是直接传递进去,不支持动态sql,不便于多表关联查询.SQL 夹杂在Java代码中耦合度高

维护不易且实际开发需求中 SQL 有变化,频繁修改的情况多见,代码冗长,开发效率低
 

MyBatis性能好,简单易学,SQL 和 Java 编码分开,功能边界清晰,学习以配置为主

 

而Hibernate有三者最高的封装性和自动化,基于全映射的全自动框架,大量字段的 POJO 进行部分映射时比较困难。反射操作太多,导致数据库性能下降

是一个比较老旧的框架,入门稍难,使用方便开发效率高,内部自动生产的 SQL,很少写sql代码但是不容易做特殊优化。处理复杂业务时,灵活度差, 复杂的SQL难写难理解,例如多表查询的SQL语句