`

MyBatis理解

 
阅读更多

我们把Mybatis的功能架构分为三层:

 

  1. API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。 
  2. 数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。 
  3. 基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。 

MyBatis支撑注解和配置文件两种方式。注释方式比较直观,但对于复杂关系的查询,不如配置文件清晰。如一对多、多对多。配置文件方式,结构清晰,与dao分离,显示不够直观。

 

MyBatis,可以使用动态SQL,如if、choose、when、otherwise、foreach

 

#相当于对数据加上双引号,$相当于直接显示数据。#方式能够很大程度防止sql注入。一般能用#的就别用$

 

Spring+MyBatis多数据源的配置?

可以采用两种方式,一种是,配置多数据源,不同的数据源,对应不同的包,MapperScannerConfigurer 的配置——使用sqlSessionFactoryBeanName属性,注入不同的sqlSessionFactory的名称,这样的话,就为不同的数据库对应的 mapper 接口注入了对应的 sqlSessionFactory。这种方式,适用于不同的数据库。

另一种是使用AOP的方式,这种方式适合master-slave这种数据库结构,主库做增、删、改,从库做查询。AOP根据配置(方法名称)选择数据源。

 

 

分享到:
评论

相关推荐

    Mybatis 入门到理解篇

    Mybatis 入门到理解篇,Mybatis 入门到精通,基础知识

    Mybatis 入门到理解篇.docx

    三大框架之一的Mybatis 从入门到理解总结的一些基本知识非常适合Java三大框架的初学者。

    深入理解mybatis原理

    MyBatis 是目前非常流行的 ORM 框架,它的功能很强大,然而其实现却 比较简单、优雅。

    mybatis和mybatis plus比较详解

    通过对比分析,帮助开发者更好地理解和选择适合自己项目的持久层解决方案。 # 2. MyBatis与MyBatis Plus的差异 MyBatis和MyBatis Plus都是优秀的持久层框架,用于简化数据库操作。然而,它们在特性、使用方式和效率...

    MyBatis3 用户指南

    翻译过程中,直接对英文版进行了勘误,或者添加了一些帮助理解的注释。同时,文档最后也增加了几节附录的内容(javaDB中使用mybatis3),希望对学习MyBatis3有用。 MyBatis是一款一流的支持自定义SQL、存储过程和...

    深入理解MyBatis中的一级缓存与二级缓存

    主要给大家深入的介绍了关于MyBatis中一级缓存与二级缓存的相关资料,文中详细介绍MyBatis中一级缓存与二级缓存的工作原理及使用,对大家具有一定的参考性学习价值,需要的朋友们下面来一起看看吧。

    mybatis-plus分布式ID实现.rar

    项目中的代码截取自mybatis-plus-...这部分代码可以帮助更好的理解mybatis-plus中分布式ID是怎么编写的,或者如果自己的项目需要写单独引入分布式ID,又不想引入mybatis-plus的话该项目可以根据自己的需要改改直接拿来用,

    Mybatis.PDF

    供了丰富的示例,通过自下而上的方法使读者更好地理解和掌握 MyBatis 的高级用法,同时针对 MyBatis 的代码生成器提供了详细的配置介绍。此外,本书还提供了缓存配置、插件开发、 Spring Spring Boot 成的详细内容...

    第一个mybatis程序

    一个非常典型的mybatis程序,有助于对mybatis的理解!

    mybatis的中文api文档

    简单易懂的mybatis的中文api文档,通过它你可以更加容易的去理解mybatis,各种制作通俗准确易懂,对于英文不是很好的同学来说就是一大福音

    青山_20200626_理解代理模式MyBatis就掌握了一半.mp4

    青山_20200626_理解代理模式MyBatis就掌握了一半.mp4

    MyBatis从入门到精通__刘增辉电子工业出版社

    针对MyBatis高级映射、存储过程和类型处理器提供了丰富的示例,通过自下而上的方法使读者更好地理解和掌握MyBatis的高级用法,同时针对MyBatis的代码生成器提供了详细的配置介绍。此外,本书还提供了缓存配置、插件...

    mybatis_plugin_2.87最新破解版

    Mybatis-plugin 2.87最新版破解,完美支持idea2016.3,亲测亲破,收2点积分作为酬劳,望理解,谢谢.

    MyBatis 源码解析:通过源码深入理解 SQL 的执行过程 - GitChat

    MyBatis 源码解析:通过源码深入理解 SQL 的执行过程 抓下来打包成了HTML文件, 方便离线观看

    Mybatis plugin 2.84(mybatis_plus)破解版

    Mybatis-plugin 2.84最新版破解,完美支持idea2016.2.1,亲测亲破,收2点积分作为酬劳,望理解,谢谢.(ps:这个插件有个bug,就是进dao或者xml时会退出idea,请设置idea退出提示)

    SpringMVC Mybatis RabbitMQ例子

    SpringMVC Mybatis RabbitMQ例子,很好的学习资料,理解MQ在Spring框架的真正用法。

    Mybatis源码学习-代码+笔记

    以maven项目呈现,内容包含mybatis入门学习与源码学习代码,还有一些笔记辅以理解。适合mybatis初学者与进阶者。

    mybatis基础及项目实战

    首先由浅入深的讲解了mybatis的原理,然后分别结合实际案例教你如何使用这两个框架,将spring mvc、mybatis以及spring框架进行整合完成实际项目的某些具体功能。视频内容丰富,讲解清晰易懂,对源码的剖析让你对框架...

    mybatis的使用

    对mybatis的讲解和使用,帮助学习和理解mybatis框架的使用和整合

Global site tag (gtag.js) - Google Analytics