Mybatis初识
2016-05-31 12:34
471 查看
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、CRUD2、一对多和多对多配置
3、动态SQL
mybatis很重要的功能就是对入参和出参数据处理
mybatis缓存机制的设计与实现原理
一级缓存和二级缓存mybatis数据源和连接池深入理解
mybatis逆向工程的使用
mybatis generatormybatis和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/
相关文章推荐
- 深入浅析mybatis oracle BLOB类型字段保存与读取
- MyBatis MapperProvider MessageFormat拼接批量SQL语句执行报错的原因分析及解决办法
- SpringMVC整合mybatis实例代码
- oracle+mybatis 使用动态Sql当插入字段不确定的情况下实现批量insert
- MyBatis学习笔记(二)之关联关系
- 浅析Mybatis 在CS程序中的应用
- Java Mybatis框架入门基础教程
- Windows下Java+MyBatis框架+MySQL的开发环境搭建教程
- Mybatis与Ibatis的区别
- MyBatis学习教程(二)―如何使用MyBatis对users表执行CRUD操作
- MyBatis学习教程(四)-如何快速解决字段名与实体类属性名不相同的冲突问题
- Java简单实现SpringMVC+MyBatis分页插件
- MyBatis批量添加、修改和删除
- MyBatis与Hibernate的比较
- 浅析mybatis和spring整合的实现过程
- 在Java的MyBatis框架中建立接口进行CRUD操作的方法
- 整理Java的MyBatis框架中一些重要的功能及基本使用示例
- mybatis的动态sql详解(精)
- MyBatis实践之动态SQL及关联查询
- 详解Mybatis动态sql