美文网首页
一、基础知识

一、基础知识

作者: Class鸣 | 来源:发表于2018-09-12 15:46 被阅读0次

基础

三大特点

  • 不屏蔽SQL
    这意味着更加精确的定位SQL语句,可以对其进行优化和改造,这有利于互联网系统的提高,符合互联网应用的性能优化特点.
  • 强大灵活的映射机制
    提供动态SQL功能,允许根据不同条件组装SQL,这个功能远比其他工具或者 Java 编码的可读性和可维护性高的多,满足了各种应用系统的同时也满足了互联网系统的高性能要求.
  • Mapper接口编程
    只要一个接口和一个XML就能创建映射器,进一步简化我们的工作,使得很多框架API在MyBatis中消失,开发者能更集中于业务逻辑中.

准备环境jar

jar包下载<a href="https://github.com/mybatis/mybatis-3/releases">https://github.com/mybatis/mybatis-3/releases</a>
参考手册<a href="http://www.mybatis.org/mybatis-3/zh/getting-started.html">http://www.mybatis.org/mybatis-3/zh/getting-started.html</a>

MyBatis 核心组件

  • SqlSessionFactoryBuilder ( 构造器 ) : 他会根据配置或者代码生成SqlSessionFactory,采用的是分步构建的Builder模式.
  • SQLSessionFactory ( 工厂接口 ) : 依靠它来生成SqlSession,使用的是工程模式 .
  • SQLSession ( 会话 ) : 一个既可以发送SQL执行返回结果,也可以获取 Mapper 的接口 . 在现有的技术中 , 一般我们会让其在业务逻辑代码中 " 消失 " ,而使用的是 MyBatis 提供的SQL Mapper接口编程技术 , 他能提高代码的可读性和可维护性 .
  • SQL Mapper ( 映射器 ) : MyBatis 新设计存在的组件 , 他由一个Java接口和XML文件(或注解)构成,需要给出对应的SQL和映射规则 . 他负责发送SQL去执行 , 并返回结果 .
  • 如图所示 :
    [图片上传中...(20180717093634217.png-69163e-1536738343975-0)]

[图片上传中...(2018070919283596.jpg-46ba9-1536738343975-1)]

SqlSessionFactory ( 工厂接口 )

  • 使用MyBatis 首先要使用配置或者代码去生产 SqlSessionFactory , 而MyBatis提供了构造器 SqlSessionFactoryBuilder . 它提供了一个类 org.apache.ibatis.session.Configuration 作为引导 , 它采用的是Builder模式.
    20180709194540139.jpg

MyBatis 工作流程

20180722101016736.png

相关文章

  • 音频基础知识02

     音频基础知识 01  音频基础知识 02  音频基础知识 03  音频基础知识 04 人类收集声音的历史   为...

  • angular笔记

    第一部分、基础知识--------------------------基础知识------------------...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • PHP全栈学习笔记18

    php基础知识,JavaScript,jQuery,ajax基础知识 linux基础知识,mysql数据库的基础与...

  • Python3基础知识

    Python3基础知识 | 基础语法 Python3基础知识 | 编程第一步 Python3基础知识 | 基本数据...

  • C语言回顾

    基础知识 控制流 基础知识补充 其他主题

  • PHP面试知识脉络(更新中)

    PHP基础知识Javascript、jQuery、ajax基础知识Linux基础知识MySQL数据库的基础与优化程...

  • p2p理财基础知识

    p2p理财基础知识 p2p理财基础知识 p2p理财基础知识

  • 2018最新Java面试题

    一.基础知识篇 1.1 Java基础知识篇 final, finally, finalize 的区别 final修...

  • Java锁---偏向锁、轻量级锁、自旋锁、重量级锁

    理解锁的基础知识 如果想要透彻的理解java锁的来龙去脉,需要先了解以下基础知识。 基础知识之一:锁的类型 公平锁...

网友评论

      本文标题:一、基础知识

      本文链接:https://www.haomeiwen.com/subject/zoovgftx.html