在Spring Boot中用.sql文件向MySql数据库填充初始数据

3

我正在使用Spring Boot与MySQL数据库。我使用Hibernate创建数据库表,但我想知道用"data.sql"文件中的一些查询来填充初始数据(例如“用户”)的最简单方法是什么?还有,我应该在pom.xml中添加哪些依赖项以及在application-dev.yml中添加哪些属性呢?


你可以使用Spring JDBC来填充应用程序中的数据。这里有一个如何使用它的示例:http://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html#howto-initialize-a-database-using-spring-jdbc 但更好的解决方案可能是使用Flyway或Liquibase。如何使用这些工具也在Spring文档中有描述。 - krynio
1个回答

3
很简单!你需要做的是在 src/main/resources 中创建一个 sql 文件,比如 data.sql 文件;然后编写你想要的查询语句,例如插入查询:
 insert into admin(username,password,role)  values('admin','admin','role_admin');

然后添加依赖项:
<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-jdbc</artifactId>
     <version>1.2.4.RELEASE</version>
     </dependency>

在application.properties文件中添加以下代码;

spring.datasource.driver-class-name=com.mysql.jdbc.Driver
     spring.datasource.url=jdbc:mysql://localhost:3306/exampleDB
     spring.datasource.username=root
     spring.datasource.password=root

更多信息请参阅:链接


我不得不将其命名为import.sql才能使其正常工作。如果有人遇到问题,可以尝试这个潜在的解决方法。 - fudge
1
@fudge,非常感谢你的评论。通过将data.sql重命名为import.sql,它帮助我解决了代码中的错误。 - Othello

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接