java 执行sql文件
# 背景
用例执行完毕,期望回滚数据,因此希望执行sql来回滚数据
# 步骤
直接show代码,借助的是mybatis的ScriptRunner
/** * 执行xx库下的表备份脚本 * * @param tableName */ public static void runSqlInStat(String tableName) { String className = Configurations.INSTANCE.get("jdbc.xx.driver"); String dbUrl = Configurations.INSTANCE.get("jdbc.xx.url"); String dbUsername = Configurations.INSTANCE.get("jdbc.xx.username"); String dbPassword = Configurations.INSTANCE.get("jdbc.xx.password"); try { Class.forName(className); Connection conn = DriverManager.getConnection(dbUrl, dbUsername, dbPassword); ScriptRunner runner = new ScriptRunner(conn); runner.setAutoCommit(true); String fileName = String.format("src/main/resources/db/%s.sql", tableName); File file = new File(fileName); try { if (file.getName().endsWith(".sql")) { runner.setFullLineDelimiter(false); runner.setDelimiter(";");//语句结束符号设置 runner.setLogWriter(null);//日志数据输出,这样就不会输出过程 runner.setSendFullScript(false); runner.setAutoCommit(true); runner.setStopOnError(true); runner.runScript(new InputStreamReader(new FileInputStream(fileName), "utf8")); logger.info(String.format("【%s】回滚成功", tableName)); } } catch (Exception e) { e.printStackTrace(); } conn.close(); } catch (SQLException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } }
虽千万人,吾往矣!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Map集合、散列表、红黑树介绍
前言 声明,本文用得是jdk1.8 前面已经讲了Collection的总览和剖析List集合: Collection总览 List集合就这么简单【源码剖析】 原本我是打算继续将Collection下的Set集合的,结果看了源码发现:Set集合实际上就是HashMap来构建的! 所以,就先介绍Map集合、散列表和红黑树吧! 看这篇文章之前最好是有点数据结构的基础: Java实现单向链表 栈和队列就是这么简单 二叉树就这么简单 当然了,如果讲得有错的地方还请大家多多包涵并不吝在评论去指正~ 一、Map介绍 1.1为什么需要Map 前面我们学习的Collection叫做集合,它可以快速查找现有的元素。 而Map在《Core Java》中称之为-->映射.. 映射的模型图是这样的: 那为什么我们需要这种数据存储结构呢???举个例子 作为学生来说,我们是根据学号来区分不同的学生。只要我们知道学号,就可以获取对应的学生信息。这就是Map映射的作用! 生活中还有很多这样的例子:只要你掏出身份证(key),那就可以证明是你自己(value) 1.2Map与Collection的区别 1.3Map...
- 下一篇
[php入门] 4、HTML基础入门一篇概览
[php入门] 1、从安装开发环境环境到(庄B)做个炫酷的登陆应用 [php入门] 2、基础核心语法大纲 [php入门] 3、WAMP中的集成MySQL相关基础操作 1、HTML的作用 HTML是超文本标记语言,主要用于制作页面结构;而经常与之一起用的CSS是层叠样式表,用于设置页面的样式,比如颜色、字体等;而javascript主要用来制作动画效果、与数据库交互等。 2、HTML有两种标签形式: ① 双闭合标签:<标签名 属性名1=值1 属性2=值2......>标签中的内容</标签名> ② 单闭合标签:<标签名 属性名1=值1 属性名2=值2..../> 3、基本结构: <!DOCTYPE>是文档声明,表明当前静态页使用哪个版本的静态页。像博客园首页采用的<!DOCTYPE html>是HTML5 标签是一层嵌套一层,HTML标签是最外层标签,其它标签都写在这个标签里面。 HTML标签又包含了head标签和body标签,其中head设置头信息,body设置内容。 head标签又包含头、编码、关键词等标签。 其中...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- CentOS关闭SELinux安全模块
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Red5直播服务器,属于Java语言的直播服务器