Java开发mybatis框架_Java中的MyBatis框架

MyBatis简介

(1)MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。

(2)MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注SQL本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。

(3)Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后mybatis框架执行sql并将结果映射成java对象并返回。

总之,Mybatis对JDBC访问数据库的过程进行了封装,简化了JDBC代码,解决JDBC将结果集封装为Java对象的麻烦。

MyBatis的架构图解

1f9cd52ea9a0924e8bc704b505b01a91.png

(1)mybatis-config.xml是Mybatis的核心配置文件,通过其中的配置可以生成SqlSessionFactory,也就是SqlSession工厂。

(2)基于SqlSessionFactory可以生成SqlSession对象。

(3)SqlSession是一个可以发送SQL去执行,并返回结果的对象,类似于JDBC中的Connection对象,也是Mybatis中至关重要的一个对象。

(4)Executor是SqlSession底层的对象,用于执行SQL语句。

(5)MapperStatement对象也是SqlSession底层的对象,用于接收输入映射(SQL语句中的参数),以及做出输出映射(即将SQL查询的结果映射成相应的结果)。

为什么要使用MyBatis

因为使用传统方式JDBC访问数据库存在很多缺点,如:代码繁琐,有太多重复代码,需要操作太多对象,释放资源,对结果的处理太麻烦等。在Mybatis框架中这些问题几乎都得到了解决!!

MyBatis的基本工作流程

(1)读取配置文件,配置文件包含数据库连接信息Mapper映射文件或者Mapper包路径.

(2)有了这些信息就可以创建SqlSessionFactory,SqlSessionFactory的生命周期是程序级,程序运行时建立,程序结束时消亡。

(3)SqlSessionFactory建立SqlSession,目的是执行SQL语句,SqlSession是过程级,在一个方法中建立,方法结束时应该关闭。

(4)当用户使用mapper.xml文件中配置的方法时,MyBatis首先会解析SQL动态标签为对应数据库SQL语句的形式,并将其封装进MapperStatement对象,然后通过Executor将SQL注入数据库执行,并返回结果。

(5)将返回的结果通过映射,包装成java对象。

MyBatis的编程步骤

(1)创建SqlSessionFactory;

(2)通过SqlSessionFactory创建SqlSession对象;

(3)通过SqlSession执行数据库操作;

(4)通过session.commit()提交事务;

(5)使用session.close()关闭事务。

小结

MyBatis框架易于上手和掌握,SQL直接写在xml里面,便于统一管理和优化,减少了SQL与程序代码间的耦合,同时也提供了xml标签,支持动态的SQL编写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值