标签:efault handle XML img nbsp apache wlan apach 拼接
org.apache.ibatis.scripting.LanguageDriver //语言驱动
org.apache.ibatis.scripting.xmltags.XMLLanguageDriver //xml语言驱动,Configuration默认的语言驱动(在new configuration对象时,注入的语言驱动)
org.apache.ibatis.scripting.defaults.RawLanguageDriver//未加工的语言驱动
org.apache.ibatis.mapping.SqlSource //将mapper.xml中的sql语句解析成该对象
org.apache.ibatis.scripting.xmltags.DynamicSqlSource //动态sql的实现类,内部依赖了sql树sqlNode
org.apache.ibatis.scripting.defaults.RawSqlSource//不完全的RawSqlSource
org.apache.ibatis.builder.StaticSqlSource//静态的sqlSources
org.apache.ibatis.scripting.xmltags.SqlNode //动态sql节点
org.apache.ibatis.scripting.xmltags.XMLScriptBuilder//构建sql语句
制造:SqlSource
制造:ParameterHandler
制造:BoundSql
处理自己类型的sql节点,并根据当前请求的参数生成自己类型sql片段,拼接至DynamicContext
处理当前请求,将不同类型SqlNode处理完的sql片段,拼接成一个完整的sql语句
在项目初始化的时候,解析mapper.xml文件
基于构建者模式,使用XMLStatementBuilder生成MappedStatement
MappedStatement依赖DynamicSqlSource或RawSqlSource(依赖LanguageDriver生成)
在项目运行过程中的时候,从MappedStatement中获取DynamicSqlSource或RawSqlSource
基于构建者模式,使用SqlSourceBuilder生成StaticSqlSource,再从StaticSqlSource中生成BoundSql
标签:efault handle XML img nbsp apache wlan apach 拼接
原文地址:https://www.cnblogs.com/shangxiaofei/p/11407979.html