Mybatis初识

Mybatis初识


mybatis介绍

mybatis是一个简化和实现了java数据持久化层的开源框架,它抽象了大量的JDBC冗余代码,并提供了一个简单易用的API和数据库交互。
mybatis流行的主要原因在于它简单和易用以及较高的性能。

introduce:

    MyBatis is a first class persistence framework with support for custom SQL,stored procedures and advanced mappings. MyBatis eliminates almost all of the JDBC code and manual setting of parameters and retrieval of results. MyBatis can use simple XML or Annotations for configuration and map primitives,Map interfaces and Java POJOs (Plain Old Java Objects) to database records.

mybatis优点特性

1、消除了大量的JDBC冗余代码
2、学习成本比较低
3、可以很好的与传统的数据库协同工作
4、可以接受SQL语句
5、提供与Spring和Guice框架的集成支持
6、提供了与第三方缓存类库的集成支持
7、较高的访问和查询性能

备注:通常一些ORM框架使用了大量的动态代理模式来产生尸体对象等,由于动态代理本身有很大的内存消耗,大量使用动态代理会使整个系统性能变得比较差。


mybatis核心预览


mybatis架构设计分析

//TODO 图画展示


mybatis核心配置文件mybatis-config.xml配置和加载机制

mybatis初始化机制


使用mybatis方式

1、基于传统的statmented id调用方式
2、基于Mapper接口调用方式(更符合面向对象思想,底层还是调用第一种)
备注:使用Mapper接口是最佳实践,我们可以以类型安全的方式调用映射的SQL语句

mybatis核心类和接口

SqlSessionFactoryBuilder(读取核心配置文件生成会话工厂的类)
SqlSessionFactory(新建会话的工厂类)
SqlSession(会话对象类)

Configuration(对应mybatis-config配置文件的一个对象)
MappedStatement(对应着映射器配置文件的每一条statment语句配置)
Executor(执行器接口,就像发送器)
BoundSql(对应一条sql语句)
TypeHandler()
ParameterHandler(对入参作处理处理器)
ResultHandler(对出参作处理的处理器)

//TODO 分析一次查询的全过程(debug代码分析)


映射器配置文件

1、CRUD
2、一对多和多对多配置
3、动态SQL

mybatis很重要的功能就是对入参和出参数据处理


mybatis缓存机制的设计与实现原理

一级缓存和二级缓存


mybatis数据源和连接池深入理解

mybatis逆向工程的使用

mybatis generator


mybatis和spring集成

参考

1、http://www.mybatis.org/mybatis-3/
2、http://generator.sturgeon.mopaas.com/index.html#
3、http://blog.csdn.net/u010349169/article/category/2309433
4、https://en.wikipedia.org/wiki/MyBatis
5、https://www.ibm.com/developerworks/cn/opensource/os-cn-mybatis/
6、https://www.ibm.com/developerworks/cn/java/j-lo-ibatis-principle/
7、https://www.ibm.com/developerworks/cn/opensource/os-cn-ibatis/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值