使用Spring Security部署Spring MVC应用程序时自动插入默认记录
我正在寻找一种在部署SpringMVC应用程序时使用JPA自动插入默认管理员帐户的方法 我的数据库是基于实体生成的使用Spring Security部署Spring MVC应用程序时自动插入默认记录,spring,spring-mvc,spring-security,jpa-2.0,Spring,Spring Mvc,Spring Security,Jpa 2.0,我正在寻找一种在部署SpringMVC应用程序时使用JPA自动插入默认管理员帐户的方法 我的数据库是基于实体生成的 我想在每次部署应用程序时插入一个默认管理员用户,分配角色。这取决于您使用的JPA实现。 如果使用Hibernate可以将import.sql文件(包含要加载的记录)添加到类路径中。更多信息 作为一种解决方法,您也可以使用该工具。我建议使用一个迁移实用程序,使您的数据库与您的代码库保持同步-这些通常是DDL,但插入默认管理员用户、分配角色等的查询也可以是该迁移实用程序的一部分。有非常
我想在每次部署应用程序时插入一个默认管理员用户,分配角色。这取决于您使用的JPA实现。 如果使用
Hibernate
可以将import.sql
文件(包含要加载的记录)添加到类路径中。更多信息
作为一种解决方法,您也可以使用该工具。我建议使用一个迁移实用程序,使您的数据库与您的代码库保持同步-这些通常是DDL,但插入默认管理员用户、分配角色等的查询也可以是该迁移实用程序的一部分。有非常好的一个可用的-是一个我用过的,是另一个
Flyway主页上对不同的迁移实用程序进行了很好的比较,您也可以查看。我使用CommandLineRunner界面
@Component
public class CommandLineAppStartupRunner implements CommandLineRunner {
@Autowired
UserRepository userRepository;
@Override
public void run(String...args) throws Exception {
User admin = new user(firstName);
userRepository.save(admin);
}
}
在应用程序启动之前,将执行该类
您可以在此处找到其他方法: