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

相关文章

如何保证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.选取区域 下载

Mysql基础练习题 1378.使用唯一标识符替换员工ID (力扣)

1378. 展示每位用户的 唯一标识码(unique ID );如果某位员工没有唯一标识码,使用 null 填充即可。 你可以以任意顺序返回结果表。 题目链接: https://leetcode.cn/problems/replace-employee-id-with-the-unique-identifier/ 建表插入数据: Create table If Not Exists E

Elasticsearch在高并发下如何保证读写一致性

当多个客户端几乎同时对同一个索引进行读和写操作时,Elasticsearch 通过多个机制来管理这种一致性,以下是一些关键点和策略,以确保在高并发环境下的读写一致性: 冲突检测与版本控制 当进行并发写入时,Elasticsearch 使用版本控制/冲突检测机制来确保一致性: 乐观并发控制:Elasticsearch 在每个文档上维护版本号。每当文档被更新时,该版本号就会增加。当写入操作请求使

什么是接口幂等性?如何保证接口幂等性?

什么是接口幂等性?         接口幂等性(Idempotency)是指同样的请求被重复执行多次,产生的结果与执行一次的结果相同。换句话说,接口无论被调用一次还是多次,系统的最终状态保持不变。例如,在一个电商系统中,用户可能会因为网络问题重复提交订单,但系统应该保证无论请求被执行多少次,只会创建一个订单。 如何保证接口幂等性? 为了保证接口幂等性,可以采用以下策略: 1. 根据业务逻辑

高端控制台使用过程中如何保证用电安全

在数字化时代,高端控制台作为数据中心、监控室及正规工作站的核心设备,其稳定运行对于保障业务连续性至关重要。而用电安全,则是这一稳定运行不可或缺的前提。高端控制台集成了大量精密电子设备,对电力供应的质量与稳定性有着极高的要求。因此,在使用过程中,采取有效措施确保用电安全,不仅关乎设备寿命,更直接关系到人身安全及数据安全。下面,就由嘉德立给大家具体介绍一下高端控制台使用过程中如何保证用电安全。