Je me demande quelle est la meilleure façon de charger les données initiales de la base de données avant le démarrage de l'application ? Ce que je cherche, c'est quelque chose qui va remplir ma base de données H2 avec des données.
Par exemple, j'ai un modèle de domaine "User". Je peux accéder aux utilisateurs en allant dans /users mais, au départ, il n'y aura pas d'utilisateurs dans la base de données et je devrai les créer. Existe-t-il un moyen de remplir automatiquement la base de données avec des données ?
Actuellement, j'ai un Bean qui est instancié par le conteneur et qui crée des utilisateurs pour moi.
Exemple :
@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"));
}
}
Mais je doute fort que ce soit la meilleure façon de procéder. Ou bien l'est-elle ?
4 votes
Cela fonctionnera, ou simplement ajouter
data.sql
et/ouschema.sql
pour initier les données Tout ceci est documenté dans le guide de référence (que je vous conseille de lire).0 votes
Veuillez cocher la bonne réponse si cela vous a aidé.
0 votes
Quelqu'un a-t-il réussi à le faire fonctionner ? Je n'arrive toujours pas à le mettre en place et je ne sais pas ce qui me manque. git.io/v5SWx