写了三个函数
第一个函数 使用IO 修改sql文件内容;
第二个函数 执行sql文件脚本;用的Mybatis-plus的runScript方法执行的sql文件;
ScriptRunner scriptRunner = new ScriptRunner(conn);
scriptRunner.runScript(Resources.getResourceAsReader(“path”));
第三个函数 将执行结果,通过select查出,使用IO 写入txt文件。
然后,我想让这三个函数按照1,2,3顺序执行;
可实际上,执行顺序是2,1,3;
问题是:1,3函数的IO流是异步的,怎么让他们顺序执行。
回答不易,求求您采纳点赞哦
你可以使用同步阻塞方式让三个函数按照顺序执行,例如:
public void runSequentially() throws Exception {
modifySQLFile();
runSQLScript();
writeResultToFile();
}
每个函数内部的 IO 操作可能是异步的,但整个 runSequentially 方法是同步的,所以它们会按照顺序执行。
不知道你这个问题是否已经解决, 如果还没有解决的话: