
mybatis源码解析
mybatis源码解析
Nuan_Feng
蓝桥杯国赛一等奖。唯有志存千里,方能风行天下。
展开
-
mybatis枚举支持通过value映射
背景之前ebean简单的 @DbEnumValue 注解就能支持通过value映射。mybatis也有支持,是 @EnumValue注解。分别支持二种映射规则。EnumOrdinalTypeHandler和EnumTypeHandlerEnumTypeHandler(默认)作用: @Override public void setNonNullParameter(PreparedStatement ps, int i, E parameter, JdbcType jdbcType) thr原创 2021-07-01 19:18:40 · 603 阅读 · 0 评论 -
mybatis源码解析九之整个加载流程解析
demo地址 public static void main(String[] args) throws Exception { Reader reader = Resources.getResourceAsReader("mybatis/SqlMapconfig.xml"); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader); SqlSess原创 2020-05-24 12:04:45 · 330 阅读 · 0 评论 -
mybatis源码解析八之other
拦截器public interface Interceptor {//执行拦截逻辑的方法 Object intercept(Invocation invocation) throws Throwable;//决定是否触发intercept ()方法 default Object plugin(Object target) { return Plugin.wrap(target, this); }//根据配置初始化Interceptor 对象 default void setP原创 2020-05-13 11:41:34 · 369 阅读 · 0 评论 -
mybatis源码解析三之(xml解析器dom和sax)5
xpath解析xmlpublic class XPathParser { private final Document document; //是否开启验证 private boolean validation; //加载本地DTD private EntityResolver entityResolver; //Properties标签定义值 private Pr...原创 2020-05-13 08:35:41 · 317 阅读 · 0 评论 -
mybatis源码解析七之对性能的优化
session 一级缓存优化/** * Copyright 2009-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the原创 2020-05-13 00:56:05 · 385 阅读 · 0 评论 -
mybatis源码解析六之执行过程
MyBatis 初始化SqlSessionFactoryBuilderpublic class SqlSessionFactoryBuilder {public SqlSessionFactory build(InputStream inputStream, String environment, Properties properties) { try { //读取配置文件 XMLConfigBuilder parser = new XMLConfigBuilder(原创 2020-05-13 00:51:57 · 446 阅读 · 0 评论 -
mybatis源码解析四之各大组件
xpath解析xmlpublic class XPathParser { private final Document document; //是否开启验证 private boolean validation; //加载本地DTD private EntityResolver entityResolver; //Properties标签定义值 private Pr...原创 2020-05-09 12:20:04 · 558 阅读 · 0 评论 -
mybatis源码解析五之设计模式
单例模式利用static的特性,类加载器只会加载一次同时上锁的特性,实现懒加载.public abstract class VFS { private static class VFSHolder { static final VFS INSTANCE = createVFS(); @SuppressWarnings("unchecked") static VFS createVFS() { // Try the user implementations fi原创 2020-05-08 18:55:49 · 287 阅读 · 0 评论 -
mybatis源码解析二之(xml解析器dom和sax)
dom<?xml version="1.0" encoding="UTF-8" standalone="no"?><exam> <Student examid="22" idcard="01"> <name value="zhangsan">张三</name> <location>湖北...原创 2020-04-30 09:13:35 · 321 阅读 · 0 评论 -
mybatis源码解析一之(demo)
稍等原创 2020-04-25 13:01:13 · 190 阅读 · 0 评论