我想知道在应用程序启动之前加载初始数据库数据的最佳方法是什么? 我正在寻找的是一种可以填充我的H2数据库中数据的方法。
例如,我有一个领域模型“用户”,可以通过访问 /users 来访问用户,但最初数据库中将没有任何用户,因此我必须创建他们。 有没有办法自动填充数据库中的数据?
目前,我有一个由容器实例化的Bean,为我创建用户。
示例:
@Component
public class DataLoader {
private UserRepository userRepository;
@Autowired
public DataLoader(UserRepository userRepository) {
this.userRepository = userRepository;
LoadUsers();
}
private void LoadUsers() {
userRepository.save(new User("lala", "lala", "lala"));
}
}
但我非常怀疑这是否是最好的做法。难道不是吗?
data.sql
和/或schema.sql
添加到初始化数据中。所有这些都在参考指南中有记录,建议您阅读该指南。 - M. Deinum