MyBatis简单项目配置+基础
2016-09-19 17:08
176 查看
MyBatis简介
MyBatis世界上流行最广泛的SQL映射框架,由ClintonBegin在2002年创建,其后,捐献给了Apache基金会,成立了iBatis项目。2010年5月,将代码库迁致GoogleCode,并更名为MyBatis。MyBatis是一个可以自定义SQL、存储过程和高级映射的持久层框架。 MyBatis摒除了大部分的JDBC代码、手工设置参数和结果集重获。 MyBatis只使用简单的 XML和注解来配置和映射基本数据类型、 Map接口和POJO到数据库记录。
Mybatis的功能架构分为三层
1. API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。2.数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。
3.基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。
<贴一张百度百科的图>
属性解释
SqlSessionFactoryBuilder每一个MyBatis的应用程序的入口是SqlSessionFactoryBuilder,它的作用是通过XML配置文件创建Configuration对象(当然也可以在程序中自行创建),然后通过build方法创建SqlSessionFactory对象。没有必要每次访问Mybatis就创建一次SqlSessionFactoryBuilder,通常的做法是创建一个全局的对象就可以了。
SqlSessionFactory
SqlSessionFactory对象由SqlSessionFactoryBuilder创建。它的主要功能是创建SqlSession对象,和SqlSessionFactoryBuilder对象一样,没有必要每次访问Mybatis就创建一次SqlSessionFactory,通常的做法是创建一个全局的对象就可以了。SqlSessionFactory对象一个必要的属性是Configuration对象,它是保存Mybatis全局配置的一个配置对象,通常由SqlSessionFactoryBuilder从XML配置文件创建。
SqlSession
SqlSession对象的主要功能是完成一次数据库的访问和结果的映射,它类似于数据库的session概念,由于不是线程安全的,所以SqlSession对象的作用域需限制方法内。SqlSession的默认实现类是DefaultSqlSession,它有两个必须配置的属性:Configuration和Executor。
Executor
Executor对象在创建Configuration对象的时候创建,并且缓存在Configuration对象里。Executor对象的主要功能是调用StatementHandler访问数据库,并将查询结果存入缓存中(如果配置了缓存的话)。
StatementHandler
StatementHandler是真正访问数据库的地方,并调用ResultSetHandler处理查询结果。
ResultSetHandler
处理查询结果。
配置文件
实体类
Mapper
Java
优点:
1、简单易学MyBatis本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。
2、灵活
mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统一管理和优化。通过sql基本上可以实现我们不使用数据访问框架可以实现的所有功能,或许更多。
3、解除sql与程序代码的耦合
通过提供DAL层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。
4、提供映射标签,支持对象与数据库的orm字段关系映射
5、提供对象关系映射标签,支持对象关系组建维护
6、提供xml标签,支持编写动态sql。
相关文章推荐
- 搭建简单web项目: spring3.0基础配置(1)
- quartz Web项目基础最简单配置
- 使用maevn项目的mybatis基础配置及使用
- spring加mybatis(Maven构建项目)简单篇---旨在探究spring配置方法和spring项目出现的异常分析
- VC项目配置基础[转]
- spring+mybatis+springmvc项目配置
- VC项目配置基础
- MyBatis 如何写配置文件和简单使用
- Tcp Wapper基础知识与简单配置
- 【springmvc+mybatis项目实战】杰信商贸-2.数据库配置
- mybatis 项目配置 xml文件时 报错提示(The reference to entity "useSSL" must end with the ';'
- Java学习之道:mybatis简单应用(基于配置文件)
- VC 项目配置基础
- mybatis简单应用(基于配置文件)
- VC项目配置基础
- Spring学习基础---一个简单的配置案例
- MyBatis简单的配置
- Mybatis【配置文件】就是这么简单
- SpringMVC简单项目配置
- mybatis+spring+springMVC整个项目流程的配置(简化版)