mybatis3-SqlSessionFactory保证唯一

2024-04-19 11:48

本文主要是介绍mybatis3-SqlSessionFactory保证唯一,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

初始化工具类MyBatisUtil

要保证SqlSessionFaction这个对象全局唯一

导航

回到mybatis导航页

MyBatisUtil.java

package com.torey.mybatis.utils;import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.IOException;
import java.io.Reader;/*** @ClassName:MyBatisUtils* @Description:创建全局唯一的SqlSessionFaction对象* @author: Torey*/
public class MyBatisUtils {//static是静态的,是属于这个类,而不是属于对象的private static SqlSessionFactory sqlSessionFactory=null;static {//static块用于初始化静态对象try {Reader reader = Resources.getResourceAsReader("mybatis-config.xml");sqlSessionFactory= new SqlSessionFactoryBuilder().build(reader);} catch (IOException e) {e.printStackTrace();//初始化错误,通过抛出ExceptionInInitializerError通知调用者throw new ExceptionInInitializerError(e);}}public static SqlSession openSession(){return sqlSessionFactory.openSession();}public static void closeSession(SqlSession sqlSession){if (null!=sqlSession) {sqlSession.close();}}
}

测试用例

package com.torey.mybatis;import com.torey.mybatis.utils.MyBatisUtils;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;import java.io.File;
import java.io.IOException;
import java.io.Reader;/*** @ClassName:MybatisTestor* @Description:* @author: Torey*/
public class MybatisTestor {@Testpublic void testMyBatisUtil() throws Exception {SqlSession sqlSession = null;try {sqlSession = MyBatisUtils.openSession();Configuration configuration = sqlSession.getConfiguration();System.out.println(configuration);} catch (Exception ex) {throw ex;} finally {MyBatisUtils.closeSession(sqlSession);}}}

导航,上一页,下一页

2SqlSessionFactory

4MyBatis数据查询

支持我-微信扫一扫-加入微信公众号

Aseven公众号

赞赏作者

赞赏作者

这篇关于mybatis3-SqlSessionFactory保证唯一的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/917458

相关文章

浅析如何保证MySQL与Redis数据一致性

《浅析如何保证MySQL与Redis数据一致性》在互联网应用中,MySQL作为持久化存储引擎,Redis作为高性能缓存层,两者的组合能有效提升系统性能,下面我们来看看如何保证两者的数据一致性吧... 目录一、数据不一致性的根源1.1 典型不一致场景1.2 关键矛盾点二、一致性保障策略2.1 基础策略:更新数

Java中JSON格式反序列化为Map且保证存取顺序一致的问题

《Java中JSON格式反序列化为Map且保证存取顺序一致的问题》:本文主要介绍Java中JSON格式反序列化为Map且保证存取顺序一致的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录背景问题解决方法总结背景做项目涉及两个微服务之间传数据时,需要提供方将Map类型的数据序列化为co

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

如何保证android程序进程不到万不得已的情况下,不会被结束

最近,做一个调用系统自带相机的那么一个功能,遇到的坑,在此记录一下。 设备:红米note4 问题起因 因为自定义的相机,很难满足客户的所有需要,比如:自拍杆的支持,优化方面等等。这些方面自定义的相机都不比系统自带的好,因为有些系统都是商家定制的,难免会出现一个奇葩的问题。比如:你在这款手机上运行,无任何问题,然而你换一款手机后,问题就出现了。 比如:小米的红米系列,你启用系统自带拍照功能后

集群环境下为雪花算法生成全局唯一机器ID策略

雪花算法是生成数据id非常好的一种方式,机器id是雪花算法不可分割的一部分。但是对于集群应用,让不同的机器自动产生不同的机器id传统做法就是针对每一个机器进行单独配置,但这样做不利于集群水平扩展,且操作过程非常复杂,所以每一个机器在集群环境下是一个头疼的问题。现在借助spring+redis,给出一种策略,支持随意水平扩展,肥肠好用。 大致策略分为4步: 1.对机器ip进行hash,对某一个(大于

前端vue项目生成唯一的uuid

一、使用步骤 1.安装uuid 代码如下(示例): npm install -S uuid 2.在需要使用uuid的.vue文件中生成并存储uuid 代码如下(示例): import { v4 as uuidv4 } from 'uuid';mounted () {let sid=''if(localStorage.getItem('sid')){sid=localStorage.g

Java 面试题:从源码理解 ThreadLocal 如何解决内存泄漏 ConcurrentHashMap 如何保证并发安全 --xunznux

文章目录 ThreadLocalThreadLocal 的基本原理ThreadLocal 的实现细节内存泄漏源码使用场景 ConcurrentHashMap 怎么实现线程安全的CAS初始化源码添加元素putVal方法 ThreadLocal ThreadLocal 是 Java 中的一种用于在多线程环境下存储线程局部变量的机制,它可以为每个线程提供独立的变量副本,从而避免多个线

等式(数论/唯一分解定理)

链接: https://www.nowcoder.com/acm/contest/90/F 来源:牛客网 题目描述 给定n,求1/x + 1/y = 1/n (x<=y)的解数。(x、y、n均为正整数) 输入描述: 在第一行输入一个正整数T。接下来有T行,每行输入一个正整数n,请求出符合该方程要求的解数。(1<=n<=1e9) 输出描述: 输出符合该方程要求的解数。

截取pdf中的部分内容,又保证内容不失真,实现方式

文章目录 0.为什么需要截取pdf1.访问网站2.上传你需要截取的pdf文件3.选取区域下载 0.为什么需要截取pdf 如果直接截图工具截图的话,里面的文字和图片内容会出现失真的情况,但是我们希望pdf空白部分的内容不要,这个时候就需要截取pdf工具 1.访问网站 进入网站截取pdf文件的内容 2.上传你需要截取的pdf文件 3.选取区域 下载