Mybaits的特点及优点
什么是mybatis,mybatis有什么特点,下面先给大家介绍下mybatis的概念及特点。
jdbc开发优缺点:
1)优点:简单易学,上手快,非常灵活构建sql,效率高
2)缺点:代码繁琐,难以写出高质量的代码(例如:资源的释放,sql注入安全性等)
开发者既要写业务逻辑,又要写对象的创建和销毁,必须管底层具体数据库的语法
(例如:分页)。
3)适合于超大批量数据的操作,速度快
hibernate开发优缺点:
1)优点:不用写sql,完全以面向对象的方式设计和访问,不用管底层具体数据库的语法,(例如:分页)便于理解。
2)缺点:处理复杂业务时,灵活度差, 复杂的hql难写难理解,例如多表查询的hql语句
3)适合于中小批量数据的操作,速度慢
1)基于上述二种支持,我们需要在中间找到一个平衡点呢?结合它们的优点,摒弃它们的缺点,
这就是mybatis,现今mybatis被广泛的企业所采用。
2)mybatis 本是apache的一个开源项目ibatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为mybatis 。2013年11月迁移到github。
3)ibatis一词来源于“internet”和“abatis”的组合,是一个基于java的持久层框架。ibatis提供的持久层框架包括sql maps和data access objects(dao)
4)jdbc/dbutils/springdao,hibernate/springorm,mybaits同属于orm解决方案之一
好了,下面在给大家简单介绍下mybaits的特点及优点,具体内容如下所示:
1.sql语句和代码分离
便于统一管理和维护,不必再java代码中调式sql语句.但是当sql语句出错时,控制台不会打印log,
解决办法--引用log4j
2.用标签拼接sql语句
用标签代替java代码虽然写简单sql语句时方便了许多,但是复杂的语句拼接难度大
3.结果集和java对象自动映射
写过hibernate的都知道,hibernate连接数据库生成sql语句的时候,会自动生成数据库实体类和其映射文件.在mybaits中,它帮我们做了这件事情.但是对数据库的字段要求较
高,实体类和配置文件需要手写.
4.即时加载
在一个页面同时显示大量数据时,hibernate的延时加载会创建大量的代理类,消耗资源.mybaits并不通过延时访问数据库.