MyBatis 初学(1)

到目前为止,项目上所用到的MyBatis的地方很少,使用Hibernate居多。

看了论坛上很多资料,想深入的学习下去,在这里向开发者致敬,向前辈学习。

言归正传,如下:

(1)Mybatis是Apache的开源项目,前身是iBatis,随着版本推移,直到iBatis3之后更名为Mybatis。

(2)Mybatis是一个Java持久层框架,包括DAO和SQL Maps。但这个框架是半自动的,有利有弊。

(3)说到利弊,自然要对比JDBC和Hibernate。先说JDBC,现在有点规模的项目应该都不会直接使用JDBC进行编程,JDBC和代码的耦合度太高,夹在Java代码块中,使代码看的很乱,这是硬伤。另外JDBC维护起来相对麻烦,在项目的SQL不断变化时很容易使开发者头大。Hibernate是相对与Mybatis重量级的持久层框架,相对Mybatis特殊处理的sql,不够灵活,框架规模大,自然效率上会下降。

(4)对于开发人员而言,框架和业务分离是大家都想看到的,所以SQL和JAVA逻辑分开,你好我好大家好。一个专注与数据,一个专注与业务。

(5)Mybatis不依赖第三方的库,在github上可以下到mybatis的jar包以及和spring整合的jar包。

(6)sql写在xml中,方便管理和优化,也可以特殊处理很多内容。

(7)通过mapper将dao和配置xml中sql语句关联,将业务逻辑和数据访问逻辑分开,这样系统在设计的时候更清新,容易维护。

(8)但Mybatis在实际应用中,需要编写大量的SQL语句,对开发人员的SQL水平有一定的要求,尤其是关联字段多、表多的时候,难度会有所增加。

(9)SQL语句依赖数据库,针对不同的数据库,如果要做到数据库可移植,需要做大量的配置工作。

(10)好在现在各种框架都有插件,可以帮助开发人员在前期先生成一定的代码和sql语句,在这基础上开发者再进行深入定制开发,相对纯手动开发,效率会提升不少。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值