Me pregunto cuál es la mejor manera de cargar los datos iniciales de la base de datos antes de que se inicie la aplicación. Lo que estoy buscando es algo que llene mi base de datos H2 con datos.
Por ejemplo, tengo un modelo de dominio "Usuario". Puedo acceder a los usuarios yendo a / users pero inicialmente no habrá ningún usuario en la base de datos, así que tengo que crearlos. ¿Hay alguna forma de llenar la base de datos con datos automáticamente?
Por el momento, tengo un Bean que el contenedor crea instancias y crea usuarios para mí.
Ejemplo:
@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"));
}
}
Pero dudo mucho que sea la mejor manera de hacerlo. ¿O es eso?
data.sql
y / oschema.sql
iniciará datos. Todo esto está documentado en la guía de referencia (que sugiero leer).