博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis介绍和架构
阅读量:5925 次
发布时间:2019-06-19

本文共 1127 字,大约阅读时间需要 3 分钟。

MyBatis介绍

  1. MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,实质上Mybatis对ibatis进行一些改进。

  2. MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。

  3. Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt、CallableStatement)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射成java对象并返回。

Mybatis架构

  • mybatis配置

    SqlMapConfig.xml,此文件作为mybatis的全局配置文件,配置了mybatis的运行环境等信息。
    mapper.xml文件即sql映射文件,文件中配置了操作数据库的sql语句。此文件需要在SqlMapConfig.xml中加载。

  • 通过mybatis环境等配置信息构造SqlSessionFactory即会话工厂

  • 由会话工厂创建sqlSession即会话,操作数据库需要通过sqlSession进行。

  • mybatis底层自定义了Executor执行器接口操作数据库,Executor接口有两个实现,一个是基本执行器、一个是缓存执行器。

  • Mapped Statement也是mybatis一个底层封装对象,它包装了mybatis配置信息及sql映射信息等。mapper.xml文件中一个sql对应一个Mapped Statement对象,sql的id即是Mapped statement的id。

  • Mapped Statement对sql执行输入参数进行定义,包括HashMap、基本类型、pojo,Executor通过Mapped Statement在执行sql前将输入的java对象映射至sql中,输入参数映射就是jdbc编程中对preparedStatement设置参数。

  • Mapped Statement对sql执行输出结果进行定义,包括HashMap、基本类型、pojo,Executor通过Mapped Statement在执行sql后将输出结果映射至java对象中,输出结果映射过程相当于jdbc编程中对结果的解析处理过程。


  • 邮箱:
  • Good Luck!

转载地址:http://gnovx.baihongyu.com/

你可能感兴趣的文章
Matlab学习------------带有右键菜单的GUI学习实例
查看>>
查看和修改Oracle数据库服务器端的字符集
查看>>
纯css3实现的鼠标悬停动画按钮
查看>>
08 comet反向ajax
查看>>
Java程序性能优化
查看>>
onWindowFocusChanged
查看>>
Nutch 是一个开源Java 实现的搜索引擎
查看>>
使用T-SQL找出执行时间过长的作业
查看>>
codeforces 148D之概率DP
查看>>
深度分析 Java 的 ClassLoader 机制(源码级别)(转)
查看>>
段落排版--行间距, 行高(line-height)
查看>>
Wpf控件ListBox使用实例2
查看>>
用仿ActionScript的语法来编写html5——终篇,LegendForHtml5Programming1.0开源库件
查看>>
《随笔记录》20170310
查看>>
CentOS 7 Root用户密码重置 2017-04-02
查看>>
linux下永久添加静态路由
查看>>
Crowbar - SIMILE
查看>>
【转】Loadrunner入门(《软件性能测试过程详解与案例剖析》)
查看>>
hdu1387之queue应用
查看>>
QEMU KVM Libvirt手册(11): Managing Storage
查看>>