mybatis sqlsession怎样设置超时时间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis sqlsession怎样设置超时时间相关的知识,希望对你有一定的参考价值。

参考技术A mybatis sqlsession怎样设置超时时间
全局配置
在mybatis配置文件的settings节点中,增加如下配置
[html] view plain copy
<settings>
<setting name="defaultStatementTimeout" value="25"/>
</settings>

Mybatis -- Mybatis相应API(SqlSessionFactoryBuilderSqlSessionFactory(可以设置自动提交事务)SqlSession)

1. Mybatis相应API


1.1 SqlSession工厂构建器SqlSessionFactoryBuilder


1.2 SqlSession工厂对象SqlSessionFactory


1.3 SqlSession会话对象


2. 补充:了解SqlSessionFactory工厂类

每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为核心的。		
SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得。而 
SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先配置的
Configuration 实例来构建出 SqlSessionFactory 实例。

2. SqlSession对象详解

Configuration conf // conf 是配置文件的配置信息

用户访问数据库是基于SqlSession的,用户去访问数据库的这个过程也叫做会话,一次会话就代表了一次连接。SqlSession都是由SqlSessionFactory生产出来的。

用户在访问数据库的时候,需要用到很多的配置信息
(比如数据库的url,用户名,密码,sql语句...)
这些信息都是从配置文件来的,这些配置信息都是加载到Configuration的
实例conf对象中,所以每次访问数据库都会去拿这个conf对象。
但是大家想一想,conf对象里面包含了大量的配置信息,有可能占用的内存比较大。
基于这样的考虑,Mybatis里面的conf对象是单例唯一的,当我们的SqlSession
需要去访问数据库,Myabtis肯定不会让它对重新实例化一次conf对象,
而是让它去引用 单例唯一的的conf对象的地址。
所以SqlSessionFactory在每生产一个SqlSession的时候,都会把
conf对象的地址传递过去。


以上是关于mybatis sqlsession怎样设置超时时间的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis -- Mybatis相应API(SqlSessionFactoryBuilderSqlSessionFactory(可以设置自动提交事务)SqlSession)

Mybatis入门案例超详细

当达到测试超时时,Maven 肯定会失败构建,即使失败时设置为 true

Xcode 服务器 - 尝试设置 AX 消息传递超时时超时

当MYSQL设置AUTOCOMMIT = 0时,Mybatis sqlSession.com不起作用

当我在 gunicorn 中为 Django 应用程序设置工作人员超时时,其他用户无法访问该应用程序