Spring boot 对Sql文件的Spring启动调用
我有一个关于调用sql文件的Spring引导逻辑的小问题。我知道,如果模式sql文件保存在SpringBoot应用程序项目的资源目录中,则会自动调用它们。 但是我想从另一个目录给他们打电话。我已经编写了下面的代码来尝试实现这一点,但失败了,并显示以下错误消息 代码: 错误消息:java.io.FileNotFoundException:无法打开类路径资源[C:/react file upload master/createConfigurationTableAndData.sql],因为它不存在 它没有读取我的目录。如果你能教我同样的道理,那就太好了。谢谢。尝试使用FileSystemResource而不是ClassPathResource,并给出绝对路径Spring boot 对Sql文件的Spring启动调用,spring-boot,spring-batch,Spring Boot,Spring Batch,我有一个关于调用sql文件的Spring引导逻辑的小问题。我知道,如果模式sql文件保存在SpringBoot应用程序项目的资源目录中,则会自动调用它们。 但是我想从另一个目录给他们打电话。我已经编写了下面的代码来尝试实现这一点,但失败了,并显示以下错误消息 代码: 错误消息:java.io.FileNotFoundException:无法打开类路径资源[C:/react file upload master/createConfigurationTableAndData.sql],因为它不存在
public void executeSqlScript()throws SQLException{
Connection connection = dataSource.getConnection();
connection.setAutoCommit(false);
ScriptUtils.executeSqlScript(connection, new FileSystemResource("C:\\react-file-upload-master\\createConfigurationTableAndData.sql"));
connection.commit();
}
因为ClassPathResource将只指向类路径。假设您的文件不在类路径中 是的,我知道我的错误,并试图改变逻辑。我会更新你,一旦我尝试相同的。非常感谢。
public void executeSqlScript()throws SQLException{
Connection connection = dataSource.getConnection();
connection.setAutoCommit(false);
ScriptUtils.executeSqlScript(connection, new FileSystemResource("C:\\react-file-upload-master\\createConfigurationTableAndData.sql"));
connection.commit();
}