加载中
Mybatis3.3.x技术内幕(十五):Mybatis之foreach批量insert,返回主键id列表(修复Mybatis返回null的bug)

Mybatis在执行批量插入时,如果使用的是for循环逐一插入,那么可以正确返回主键id。如果使用动态sql的foreach循环,那么返回的主键id列表,可能为null,这让很多人感到困惑;本文将分析问题产...

Mybatis3.3.x技术内幕(十四):Mybatis之KeyGenerator

在Mybatis中,执行insert操作时,如果我们希望返回数据库生成的自增主键值,那么就需要使用到KeyGenerator对象。

Mybatis3.4.x技术内幕(二十三):Mybatis面试问题集锦(大结局)

找 工作、跳槽,或者招聘,Mybatis是必备基础知识,看看你能回答几个。

Mybatis3.4.x技术内幕(十六):Mybatis之sqlFragment(可复用的sql片段)

今天,我们将分析Mybatis之sqlFragment,可以翻译为sql片段,它的存在价值在于可复用sql片段,避免到处重复编写。

Mybatis3.4.x技术内幕(二十一):参数设置、结果封装、级联查询、延迟加载原理分析

Mybatis在执行查询时,其参数设置、结果封装、级联查询、延迟加载,是最基本的功能和用法,我们有必要了解其工作原理,重点阐述级联查询和延迟加载。 1、MetaObject MetaObject用于反射创建对...

Mybatis3.3.x技术内幕(九):Mybatis初始化流程(中)

Mybatis初始化流程,其实就是组装重量级All-In-One对象Configuration的过程,主要分为系统环境参数初始化和Mapper映射初始化。

SpringMVC4.x源码分析(五):request请求寻址HandlerMethod原理

mvc:annotation-driven会将每一个Controllor内的被@RequestMapping注解标注的方法解析为HandlerMethod对象,并存储在RequestMappingHandlerMapping的MappingRegistry属性中,寻址就是根据req...

2018/06/13 16:07
207
Mybatis3.3.x技术内幕(七):Mybatis初始化之六个工具

Mybatis初始化的过程,就是组装重量级对象Configuration的过程,说Configuration是重量级对象,因为它是Mybatis框架的All-In-One对象,几乎所有的操作信息,都来自于Configuration对象。在组...

Mybatis3.4.x技术内幕(二十二):Mybatis一级、二级缓存原理分析

Mybatis的一级缓存,指的是SqlSession级别的缓存,默认开启;Mybatis的二级缓存,指的是SqlSessionFactory级别的缓存,需要配置。缓存是针对select来说的。 1、一级缓存 <configuration>   <...

SpringMVC4.x源码分析(六):消息转换器自动转换json、xml原理分析

先来一个简单的例子,首先在pom.xml内加入处理json、xml的jackson依赖包。 <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId>...

2018/06/19 21:12
261
Mybatis3.3.x技术内幕(二):动态代理之投鞭断流(自动映射器Mapper的底层实现原理)

声明一个interface接口,没有任何实现类,却要求实例化接口对象,并能调用接口方法返回业务数据,老一辈IT革命家给出评论:这简直是无--稽---之谈。然而,Mybatis却大言不惭的说:Look at m...

SpringMVC4.x源码分析(三):解析Controllor和HandlerMethod

回顾本例springmvc-config.xml的配置: <context:component-scan base-package="com.spring"/> <mvc:annotation-driven /> component-scan:扫描指定包下被@Component,@Service,@Controll...

2018/06/10 11:41
303
SpringMVC4.x源码分析(四):一个request请求的完整流程和各组件介绍

本节主要目标是探查一个request请求的完整流程,以及流程中各种web组件的简单介绍,组件的细节,将在后续组件专题文章中详细介绍。 DispatcherServlet初始化完毕后,我们发现它注册2个Handl...

2018/06/11 21:36
265
Mybatis3.3.x技术内幕(八):Mybatis初始化流程(上)

Mybatis初始化流程,其实就是组装重量级All-In-One对象Configuration的过程,主要分为系统环境参数初始化和Mapper映射初始化。

SpringMVC4.x源码分析(二):DispatcherServlet初始化过程

DispatcherServlet的类继承图。 (Made In IntelliJ IDEA) DispatcherServlet是一个Servlet,那么它就遵循Servlet的生命周期。如上图所示,DispatcherServlet还实现了Spring IOC的Aware接口...

2018/06/09 15:31
624
Mybatis3.3.x技术内幕(四):五鼠闹东京之执行器Executor设计原本

在Mybatis中,SqlSession对数据库的操作,将委托给执行器Executor来完成,而Executor由五鼠组成,分别是:简单鼠SimpleExecutor、重用鼠ReuseExecutor、批量鼠BatchExecutor、缓存鼠Caching...

Mybatis3.3.x技术内幕(一):SqlSession和SqlSessionFactory列传

深入Mybatis3.3.x源码,探究SqlSession和SqlSessionFactory的体系结构,挖掘它们之间的一世爱恨情仇。

Spring查找方法注入(Lookup method injection)的底层实现原理

Spring额外提供了三种不太常见的特殊注入方式,分别是Method injection(方法注入)、Lookup method injection(查找方法注入)、Arbitrary method replacement(强行替换注入),本文重点探...

Mybatis3.4.x技术内幕(二十):PageHelper分页插件源码及原理剖析

com.github.pagehelper.PageHelper是一款好用的开源免费的Mybatis第三方物理分页插件。

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部