Ich frage mich, wie ich die ersten Datenbankdaten am besten laden kann, bevor die Anwendung gestartet wird. Was ich suche, ist etwas, das meine H2-Datenbank mit Daten füllt.
Zum Beispiel habe ich ein Domänenmodell "Benutzer". Ich kann auf Benutzer zugreifen, indem ich zu / users gehe, aber anfangs befinden sich keine Benutzer in der Datenbank, sodass ich sie erstellen muss. Gibt es überhaupt eine Möglichkeit, die Datenbank automatisch mit Daten zu füllen?
Im Moment habe ich eine Bean, die vom Container instanziiert wird und Benutzer für mich erstellt.
Beispiel:
@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"));
}
}
Aber ich bezweifle sehr, dass dies der beste Weg ist. Oder ist es?
data.sql
und / oderschema.sql
initiieren. All dies ist im Referenzhandbuch dokumentiert (das ich zum Lesen empfehle).