首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
mybatis
订阅
hsfxuebao
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 1订阅
Mybatis源码分析(一)Mybatis的架构设计简介
撸完Spring框架,我们接着下一个征程,Mybatis。相对Spring而言,Mybatis就显得短小精悍。在本系列源码开始之前,我们先来一起了解下Mybatis的相关知识点。 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis…
Mybatis源码分析(三)通过实例来看typeHandlers
在日常开发中,我们肯定有对日期类型的操作。比如订单时间、付款时间等,通常这一类数据在数据库以datetime类型保存。如果需要在页面上展示此值,在Java中以什么类型接收它呢? 用java.util.Date接收,在页面展示的就是Tue Oct 16 16:05:13 CST …
Mybatis是如何实现SQL防注入的
Mybatis这个框架在日常开发中用的很多,比如面试中经常有一个问题:$和#的区别,它们的区别是使用#可以防止SQL注入,今天就来看一下它是如何实现SQL注入的。什么是SQL注入在讨论怎么实现之前,首
很开心,在使用mybatis的过程中我踩到一个坑
在实际开发过程中我踩到了 mybatis 的一个坑,我觉得值得记录、分享一下。 先说说这个坑是什么吧。如果你踩过这个坑,并且知道具体的原因,那这篇文章可以加深你的印象。如果你没有踩过,那你可得好好看看,因为你总会遇到的。 具体如下:在 mybatis 中的 OgnlOps.eq…
Mybatis源码分析(七)自定义缓存、分页的实现
我们知道,在Mybatis中是有缓存实现的。分一级缓存和二级缓存,不过一级缓存其实没啥用。因为我们知道它是基于sqlSession的,而sqlSession在每一次的方法执行时都会被新创建。二级缓存是基于namespace,离开了它也是不行。有没有一种方式来提供自定义的缓存机制…
Mybatis源码分析(二)XML的解析和Annotation的支持
上一节内容我们简单回顾了Mybatis的整体架构和相关概念知识点,并简述了本系列所用框架的版本。Mybatis功能强大,花样繁多。我们不会太关心所有的技术点,而是重点剖析常用的功能点。同Spring相比,Mybatis多以应用为主。从本节开始,我们正式开始源码的分析。 每个基于…
MyBatis常见面试题和答案(2020最新版)
MyBatis 是一款优秀的持久层框架,一个半 ORM(对象关系映射)框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Ja…
Mybatis源码分析(四)mapper接口方法是怎样被调用到的
在Mybatis架构的最上层就是接口层,它定义的是与数据库交互的方式。还记不记得我们在前面章节说的那两种方式?不记得没关系,我们回忆一下。 使用Mybatis提供的API进行操作,通过获取SqlSession对象,然后根据Statement Id 和参数来操作数据库。 定义Ma…
Mybatis源码分析(六)插件的创建代理过程
MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:Executor、ParameterHandler 、ResultSetHandler 、StatementHandler。 这几个方法我们在开篇第一…
Mybatis源码分析(五)探究SQL语句的执行过程
Java Database Connectivity,简称JDBC。是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。 随着Java ORM框架的发展,已经很少有机会再在生产系统中写JDBC的代码来访问数据库了,但是基本流…