mybatis基本知识学习

1,参考文献:http://www.cnblogs.com/selene/p/4604605.html

     MyBatis是一个支持普通SQL查询存储过程高级映射的优秀持久层框架

   MyBatis可以使用简单的xml或是注解用于配置和原始映射,将接口和java的POJO映射成数据库的记录。

     MyBatis对jdbc操作数据库过程进行了封装,使得开发者只需要关注sql本身,不必要花费精力处理如注册驱动,创建connection,创建statement,手动设置参数,结果集检索等jdbc繁杂的过程。

使用mybatis的时候,可以直接使用一个接口的bean。

原因是:

http://blog.csdn.net/mingtian625/article/details/47684271

    A.mybatis注解方式通过没有实现类的dao接口进行数据库操作的原理,一句话概括,就是jdk proxy,就是jdk代理

       B.spring+mybatis注解方式,也是没有实现类的,但是spring会默认返回MapperFactoryBean对象作为实现类的替换,但是这个只是被spring使用的,mybatis本身还是通过jdk代理来运行的。

mybatis功能架构分为三层:

       API接口层:接口层接收到调用请求,就会调用数据处理层来完成具体的数据处理

       数据处理层:负责具体sql查找,sql解析,sql执行和执行结果映射处理等。主要目的是根据调用的请求来完成一次数据库操作。

       基础支撑层:负责最基础的功能支撑,包括连接管理,事物管理,配置加载和缓存处理,抽取出公共东西作为基础的组件。

2,使用:SqlSessionFactoryBuilder:

每个mybatis的应用程序入口是SqlSessionFactoryBuilder. ----- 》创建SqlSessionFactory(通用做法是创建一个全局的对象即可。)

3,建立工程:

A,spring-pool-mybatis.xml:存放数据库连接池。

B,spring-mybatis:存放mybatis数据库配置。

C,applicationContext.xml:入口文件,引入数据库连接池,mybatis配置文件。

D,StudentInfoDao:一个接口。使用注释:@Repository。即可使用接口bean。

E,StudentInfoDto:实体对象。

F,studentInfoImpl.xml:映射文件。

4,#{}跟${}的区别:

#{}表示占位符,${}表示字符串拼接。

3.其他基础概念:

四大对象:executorstatementHandlerparameterHandlerresultHandler

Executor:SimpleExecutor(普通的执行器);ReuseExecutor(执行器会重用预处理语句);BatchExecutor(批量执行器

分页:https://www.cnblogs.com/kangoroo/p/7998433.html

4.应用:

简单搭建:

 

posted on 2017-03-25 21:15  活在当下L  阅读(229)  评论(0编辑  收藏  举报

导航