Mybatis框架概述

1.1.1Mybatis框架的概述

Mybatis是一个优秀的基于Java的持久层框架,它的内部封装了JDBC,使用者只需要关注Sql语句本身,而不是花费精力去处理加载驱动、创建连接、创建statement等复杂的过程。
Mybatis通过xml或注解的方式将要执行的各种Statement配置起来,通过java对象和Statement中的Sql的动态参数进行映射生成最终要执行的Sql语句,最后由Mybatis框架执行Sql语句,并将结果映射为Java对象并返回
采用了ORM思想解决了实体和数据库映射的问题,对jdbc进行了封装,屏蔽了jdbcAPI 底层访问细节,使我们不用与jdbcAPI打交道。就可以完成对数据库的持久化操作。
ORM:操作对象即是操作数据库

1.1.2 Mybatis 解决原生JDBC编程的问题

1.数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能,如果使用数据连接池可解决此问题。
**解决:**在SqlMapCofig.xml中配置数据库连接池,使用连接池管理数据库的连接
2.SQL语句在代码中硬编码,造成代码不易维护,实际应用SQL语句变化可能较大,SQL变动就需要改变Java代码。
**解决:**将Sql语句配置在XXXMapper.xml 文件中与Java代码分离
3.使用preparedStatement向占位符传递参数存在硬编码,因为SQL语句 的where条件不一定,可能多,可能少,修改SQL还要修改代码,系统不易维护
解决: Mybatis自动将Java独享映射至SQL语句,通过statement中的parameterType定义参数的类型。
4.对结果集解析存在硬编码(查询列名),SQL变化导致解析代码变化,,系统不易维护,如果将数据库记录封装成pojo对象解析比较方便。
解决: Mybatis自动将SQL语句执行结果映射至Java对象,通过statement中的resultType定义输出的结果类型。

1.1.3 Mybatis的俩种Dao开发方式

**注:**使用Mybatis开发Dao,通常有俩个方法,即原始Dao开发方法和Mapper动态代理开发方法
原始Dao开发方式需要程序员编写Dao接口和Dao实现类。
Mapper动态代理开发:只需要定义DAO接口并开发出它所对应的sql映射文件,就可以实现DAO。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值