mybatis源码分析
2024-05-08 13:26:27 0 举报
MyBatis是一个流行的Java持久层框架,它使用XML或注解配置SQL语句,将对象与数据库进行映射。在MyBatis源码分析中,我们将深入了解MyBatis的核心组件,如SqlSessionFactory、SqlSession、Mapper接口和Executor。此外,我们还将研究配置文件解析、事务管理、缓存机制以及插件机制等内容。通过分析MyBatis源码,我们将更好地理解它的工作原理,并有助于我们在实际项目中更有效地使用MyBatis。
作者其他创作
大纲/内容
StaticTextSqlNode
tag:trim
<if test=\"userName != null and userName != ''\"> user_name = #{userName}</if>
设置参数
tag:UPDATE
<trim prefix=\"SET\" prefixOverrides=\
XMLConfigBuilder#mapperElement
XMLConfigBuilder#parse
解析/mapper/resultMap
解析cache-ref
parseDynamicTags
XMLMapperBuilder#parse
XMLScriptBuilder#parseScriptNode
解析/mapper/parameterMap
MixedSqlNode
parseConfiguration(parser.evalNode(\"/configuration\"));
解析mappers
tag:if
解析cache
\ user_name = #{userName} \
SqlSessionFactoryBuilder#build
解析typeHandlers
解析databaseIdProvider
解析typeAliases
UPDATE user SET user_name = ? where id = 1
handler.handleNode (XMLScriptBuilder.IfHandler)
where id = ${id}
<#text> user_name = #{userName}</#text>
MapperRegistry#addMapper
解析plugins
解析select|insert|update|delete
解析environments
BoundSql boundSql = sqlSource.getBoundSql(parameterObject);
解析settings
\
XMLStatementBuilder#parseStatementNode
XMLLanguageDriver#createSqlSource
XMLMapperBuilder#configurationElement
解析properties
UPDATE user
解析/mapper/sql
handler.handleNode (XMLScriptBuilder.TrimHandler)
0 条评论
下一页