Grails 的 BootStrap#init 在 Spring 引导中等效?
Grails' BootStrap#init equivalent in Spring Boot?
我想在我的 Spring Boot JPA MVC web 应用程序中填充一些初始/示例记录。在 Grails 中,我看到了一个示例,其中在 grails-app/init/BootStrap
文件中的 init
闭包中完成了此类初始化。
如何在 Spring 引导 Web 应用程序中执行相同的操作?
没什么特别的。只需为初始化创建一个 class 并将其声明为 spring bean。像典型的 spring bean
.
一样声明存储库、记录器、事务等依赖项
Spring 有几种方法来声明将在 bean 创建后调用的方法,例如 postConstruct
、afterPropertiesSet
、init-method
等。您可以使用其中任何一种开始你的初始化。有关初始化回调的更多信息 http://docs.spring.io/spring/docs/current/spring-framework-reference/html/beans.html#beans-factory-lifecycle-initializingbean
这是一个不错的博客,其中包含示例 https://coderwall.com/p/wfmxga/bootstrapping-data-with-spring
您可以使用以下代码:
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;
@Component
public class Bootstrap implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
// YOUR CODE...
}
}
我想在我的 Spring Boot JPA MVC web 应用程序中填充一些初始/示例记录。在 Grails 中,我看到了一个示例,其中在 grails-app/init/BootStrap
文件中的 init
闭包中完成了此类初始化。
如何在 Spring 引导 Web 应用程序中执行相同的操作?
没什么特别的。只需为初始化创建一个 class 并将其声明为 spring bean。像典型的 spring bean
.
Spring 有几种方法来声明将在 bean 创建后调用的方法,例如 postConstruct
、afterPropertiesSet
、init-method
等。您可以使用其中任何一种开始你的初始化。有关初始化回调的更多信息 http://docs.spring.io/spring/docs/current/spring-framework-reference/html/beans.html#beans-factory-lifecycle-initializingbean
这是一个不错的博客,其中包含示例 https://coderwall.com/p/wfmxga/bootstrapping-data-with-spring
您可以使用以下代码:
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;
@Component
public class Bootstrap implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
// YOUR CODE...
}
}