Mybatis总结

Mybatis总结
一、什么是Mybatis
MyBatis是一个支持普通SQL查询、存储过程和高级映射的优秀持久层框架,使用简单的XML或注解用于配置和原始映射,将POJO和数据库记录进行相互映射
二、Mybatis的执行步骤
1.创建 SqlSessionFactory 对象。

2.通过 SqlSessionFactory 获取 SqlSession 对象。

3.通过 SqlSession 获得 Mapper 代理对象。

4.通过 Mapper 代理对象,执行数据库操作。

5.执行成功,则使用 SqlSession 提交事务。

6.执行失败,则使用 SqlSession 回滚事务。

7.最终,关闭会话。
三、Mapper编写有几种方式
接口绑定有三种实现方式:

1.通过 XML Mapper 里面写 SQL 来绑定。在这种情况下,要指定 XML 映射文件里面的 “namespace” 必须为接口的全路径名。

2.通过注解绑定,就是在接口的方法上面加上 @Select、@Update、@Insert、@Delete 注解,里面包含 SQL 语句来绑定。

3.是第二种的特例,也是通过注解绑定,在接口的方法上面加上 @SelectProvider、@UpdateProvider、@InsertProvider、@DeleteProvider注解,通过 Java 代码,生成对应的动态 SQL 。

四、Mybatis的优点
1、基于SQL语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL写在XML里,解除sql与程序代码的耦合,便于统一管理;提供XML标签,支持编写动态SQL语句,并可重用。

2、与JDBC相比,减少了50%以上的代码量,消除了JDBC大量冗余的代码,不需要手动开关连接;

3、很好的与各种数据库兼容(因为MyBatis使用JDBC来连接数据库,所以只要JDBC支持的数据库MyBatis都支持)。

4、能够与Spring很好的集成;

5、提供映射标签,支持对象与数据库的ORM字段关系映射;提供对象关系映射标签,支持对象关系组件维护。

五、Mybatis的缺点
1、SQL语句的编写工作量较大,尤其当字段多、关联表多时,对开发人员编写SQL语句的功底有一定要求。

2、SQL语句依赖于数据库,导致数据库移植性差,不能随意更换数据库。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值