自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 mybatis之Property工具集

PropertyTokenizer该类主要是解析一些稍微复杂的表达式orders[O].item[0].name这种表达式/** * @author Clinton Begin * 属性标记器 *//** * 假设传入的为student[sId].name * 则各个属性得到以下结果 * * 该属性标记器只能处理一级,即点后面的都作为children */public class PropertyTokenizer implements Iterator<Propert

2021-03-03 09:46:34 2781

原创 mybatis之Reflector和ReflectorFactory

Reflector和ReflectorFactoryReflectorFactory/** * 工厂接口的默认实现 */public class DefaultReflectorFactory implements ReflectorFactory { //该字段决定了是否对开启对Reflector的缓存 private boolean classCacheEnabled = true; //使用线程安全的map对Reflector对象进行缓存 private final Conc

2021-03-03 09:45:54 172

原创 mybatis之TypeParameterResolver工具类

TypeParameterResolver它是一个工具类,提供了一系列静态方法来解析指定类中的宇段、方法返回值或方法参数的类型。 TypeParameterResolver 中各个静态方法之间的调用关系大致如图 2-11 所示,为保持清晰,其中递归调用没有表现出来,在后面的代码分析过程中会进行强调。public class TypeParameterResolver { /** * @return The field type as {@link Type}. If it

2021-03-03 09:45:09 203

原创 mybatis之Type类

Type类type类是所有类型的父接口,它由四个子接口和一个实现类下面来看这些子接口和子类所代表的类型。Class类比较常见,它表示的是原始类型。Class类表示的是JVM中的一个类或者接口。每个java类在JVM中都表现为一个Class对象。在程序中可以通过类名.class或者对象.getClass()或者是Class.forName(全限定类名)来获取Class对象。数组也也被映射为Class对象,所有元素类型相同并且维数相同的数组都共享一个Class对象。Parameteri

2021-03-03 09:42:00 933

原创 mybatis之Log接口及其实现类

Log接口及其实现类public interface Log { boolean isDebugEnabled(); boolean isTraceEnabled(); void error(String s, Throwable e); void error(String s); void debug(String s); void trace(String s); void warn(String s);}public final class LogF

2021-03-03 09:38:24 556

原创 mybatis之ResolverUtil工具类

ResolverUtil工具类* ResolverUtil 用来定位某个class路径下满足任意条件的类们。通常的筛选条件是: * 类继承了某个接口 * 实现了某个类 * 类拥有可定的注解 * 基于Test类可以用来判断某各类是否满足这些条件 public class ResolverUtil<T> { /* * An instance of Log to use for logging in this class. */ private static f

2021-03-03 09:37:30 286

原创 mybatis之日志系列适配器

适配器模式适配器其实很简单,就是实现类Adaptee无法实现Target的接口,所有封装了一个中间层Apapter适配器,该适配器实现了接口Target并且把实现类Adaptee作为类参数。Apapter在实现接口Target的方法是实际上是使用了参数Adaptee进行实现。public interface Target { void 吃饭();}public class Adaptee { void 吃大米饭() { System.out.println("吃大

2021-03-03 09:34:33 105

原创 mybatis值VFS虚拟文件类

VFS接口 private static final Log log = LogFactory.getLog(VFS.class); /** 记录 MyBatis 供的两个 VFS 实现类. */ public static final Class<?>[] IMPLEMENTATIONS = { JBoss6VFS.class, DefaultVFS.class }; /** 记录 用户自定义 VFS 实现类 VFS addimplClass ()方法会将指定的 VFS 实

2021-03-03 09:31:30 447

原创 mybatis源码分析之XMLConfigBuilder对XML文件的解析

XMLConfigBuilder对XML文件的解析public SqlSessionFactory build(InputStream inputStream, String environment, Properties properties) { try { XMLConfigBuilder parser = new XMLConfigBuilder(inputStream, environment, properties); return build(parser.p

2021-02-25 09:41:03 171 2

原创 mybatis源码分析之XMLConfigBuilder创建过程2

XMLConfigBuilder创建过程2Configuration的初始化过程Configuration作为一个配置类对象,为许多类所共享(许多类的参数就是他),因此它是一个全局共享的配置类。Configuration类在初始化过程中初始化了许多工具类,注册中心等等,这些类主要是为了以后的应用。下边是几个Configuration类主要的参数:// <environment>节点的信息 protected Environment environment; // 以下为&lt

2021-02-25 09:40:30 144 1

原创 mybatis源码分析

XMLConfigBuilder的创建过程SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);public SqlSessionFactory build(InputStream inputStream, String environment, Properties properties) { try { XMLConfigBuilder parser = n

2021-02-25 09:40:04 115 1

原创 mybatis源码分析

Mybatis的初始化过程1 mybatis使用代码mybatis官网文档主要流程图 public class MyBatisMain { public static void main(String[] args) { // 第一阶段:MyBatis的初始化阶段,配置各项属性 String resource = "conf/mapperTest.xml"; // 得到配置文件的输入流 InputStream input

2021-02-25 09:39:09 62

原创 浅析URL

URL包含什么协议+域名或IP+端口+路径+查询字符串+锚点此处省略了端口,https默认端口443协议:HTTP或其他IPIP:Internet Protocol,主要约定了两件事,一是如何认定位一台设备,二是如何封装数据报文,以跟其他设备交流,主要关心第一件事只要你在互联网中,就至少有一个独特的IPIP分为内网和外网,外网IP地址由电信提供,需要购买,内网是由路由器提供,内网可...

2020-05-06 13:25:33 169

原创 HTML常用标签

HTML常用标签详解习了有关html各种标签的用法,现总结一下在HTML中常用的标签及其属性。1.HTML5头部结构【DOCTYPE html】声明文档类型为HTML5文件。文档声明在HTML5文档必不可少,且必须放在文档的第一行。【meta标签】1.charset属性:单独使用,设置文档字符及编码格式。写法:常见的中文编码格式:B-2312:国标码,简体中文GBK:扩展的国...

2020-05-04 21:11:39 200

原创 java多线程(1)

JAVA多线程初1为什么要使用多线程为了解决负载均衡问题,充分利用CPU资源.为了提高CPU的使用率,采用多线程的方式去同时完成几件事情而不互相干扰.为了处理大量的IO操作时或处理的情况需要花费大量的时间等等,比如:读写文件,视频图像的采集,处理,显示,保存等多线程的好处:1.使用线程可以把占据时间长的程序中的任务放到后台去处理2.用户界面更加吸引人,这样比如用户点击了一个按钮去触发某件...

2020-03-09 10:34:47 113

转载 Collection体系初阶学习

Collection体系在学习Collection体系的时候首先应该从整体看:知识点补充:存放数据的容器: 数组:1: 数组的长度固定:Student stu[] = new Student[20];new Student(“lisi”,21);数组扩容:(1)创建一个临时的数组:(2)将数组的内容copy到 临时数组。(3)原来的数组扩容:(4)把临时数组当中的内容cop...

2020-02-19 15:48:53 130

转载 java之List源码分析

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-01-17 10:37:04 130

svn与eclipse的配置文件

svn与eclipse的配置文件

2018-12-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除