mybatis
文章平均质量分 69
小鲁班-JAVA开发
java项目开发
展开
-
MyBatis源码分析-plugin执行过程
前面的几篇文章已经讲了配置文件所有属性解析都在这个方法里XMLConfigBuilder的parseConfiguration方法里,下面我们看下它是怎么解析plugin。解析plugin的方法pluginElement解析plugins的子节点interceptor,获取子节点的属性值。然后添加到Configuration的addInterceptor方法,最终添加到InterceptorChain的interceptors集合中下面我们自己定一个plugin,将..原创 2021-12-05 22:27:12 · 1345 阅读 · 0 评论 -
MyBatis源码分析-数据源及事务管理器获取过程
前一篇文章中,我们已经看到配置文件的解析过程,配置文件所有属性解析都在这个方法里XMLConfigBuilder的parseConfiguration方法,接下来我们先看下配置文件中数据源的获取过程。先看下数据源的结构parseConfiguration方法,数据源解析方法environmentsElement。先获取节点environments里的default的环境变量值,可以看到environments可以配置多个environment节点,既可以指定多个环境的数据源配置信息,然后...原创 2021-12-05 13:33:24 · 616 阅读 · 0 评论 -
MyBatis源码分析-配置文件解析过程
首先我们看数据源的节点数据<environments default="development"> <environment id="development"> <!--type="JDBC" 代表使用JDBC的提交和回滚来管理事务--> <transactionManager type="JDBC" /> <!-- mybatis提供了3种数据源类型,分别是:原创 2021-12-05 12:25:09 · 384 阅读 · 1 评论 -
MyBatis源码分析-环境搭建及数据源配置解析顺序
1.搭建maven工程,引入以下mybatis和mysql数据的jar包 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.7</version> </dependency>原创 2021-12-05 10:00:26 · 105 阅读 · 0 评论 -
mybatis源码学习笔记
1.读取配置文件mybatis-config.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!--数据库配置文件--> <proper原创 2020-09-05 23:50:09 · 155 阅读 · 0 评论 -
MyBatis的${ }与#{ }有区别
1、#{ }是预编译处理,MyBatis在处理#{ }时,它会将sql中的#{ }替换为?,然后调用PreparedStatement的set方法来赋值,传入字符串后,会在值两边加上单引号;2、${ }是字符串替换,MyBatis在处理${ }时,它会将sql中的${ }替换为变量的值,传入的数据不会加两边加上单引号。注意:使用${ }会导致sql注入,不利于系统的安全性!...原创 2020-06-27 20:07:59 · 125 阅读 · 0 评论