1、mybatis有三种基本的Executor执行器:
(1)、SimpleExecutor
每执行一次update或select,就开启一个Statement对象,用完立刻关闭Statement对象。
(2)、PauseExecutor
执行update或select,以sql做为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而且放置于Map内,供下一次使用。简言之,就是重复使用Statement对象。
(3)、BatchExecutor
执行update,将所有sql通过addBatch()都添加到批处理中,等待统一执行executeBatch(),它缓存了多个Statement对象,每个Statement对象都是addBatch()完毕后,等待逐一执行executeBatch()批处理。与JDBC批处理相同。
2、作用范围:
Executor的这些特点,都严格限制在SqlSession生命周期范围内。
3、Mybatis中如何指定使用哪一种Executor执行器?
在mybatis的配置文件中,可以指定默认的ExecutorType执行器类型,也可以手动给DefaultSqlSessionFactory的创建SqlSession的方法传递ExecutorType类型参数。
本文向大家介绍MyBatis 有哪些执行器(Executor)?相关面试题,主要包含被问及MyBatis 有哪些执行器(Executor)?时的应答技巧和注意事项,需要的朋友参考一下 MyBatis 有三种基本的Executor执行器: SimpleExecutor:每执行一次 update 或 select 就开启一个 Statement 对象,用完立刻关闭 Statement 对象; Reus
1、两者最大的区别 针对简单逻辑,都有对应的代码生成工具,可以生成简单基本的dao层方法; 针对高级查询,mybatis要手动编写sql语句和resultMap,而hibernate有良好的映射机制; 2、开发难度对比 hibernate > mybatis 3、日志统计 hibernate有自己的日志统计功能,而mybatis需要借助log4j来记录日志。 4、数据库扩展比较 hibernat
本文向大家介绍请解释下执行栈有哪些特点?相关面试题,主要包含被问及请解释下执行栈有哪些特点?时的应答技巧和注意事项,需要的朋友参考一下 执行栈,也叫调用栈,用于存储在代码执行期间创建的所有执行上下文。可以把执行栈看作一个存储函数调用的栈结构,遵循先进后出的原则。 规则如下: 1.首次运行JS代码时,会创建一个全局执行上下文,push到当前的执行栈中,每当发生函数调用时,都会为该函数创建一个新的函数
(1)Collection ① set HashSet、TreeSet ② list ArrayList、LinkedList、Vector (2)Map HashMap、HashTable、TreeMap
本文向大家介绍Java 容器都有哪些?相关面试题,主要包含被问及Java 容器都有哪些?时的应答技巧和注意事项,需要的朋友参考一下 Java 容器分为 Collection 和 Map 两大类,其下又有很多子类,如下所示: Collection List ArrayList LinkedList Vector Stack Set HashSet LinkedHashSet TreeSet Map
本文向大家介绍行内元素有哪些?块级元素有哪些? 空(void)元素有那些?相关面试题,主要包含被问及行内元素有哪些?块级元素有哪些? 空(void)元素有那些?时的应答技巧和注意事项,需要的朋友参考一下 行内元素:a b span img input select strong 块级元素:div ul ol li dl dt dd h1 h2 h3 h4 p 等 空元素: