1. 程式人生 > >關於spring boot 的啟動載入 一些初始化資料

關於spring boot 的啟動載入 一些初始化資料

方法一:

如何載入一些啟動就需要的初始化資料呢?
為了解決這樣的問題,spring Boot 為我們提供了一個方法,通過實現介面 CommandLineRunner 來實現。無需其他配置,只要建立一個類去實現介面 CommandLineRunner就可以了。

Spring Boot應用程式在啟動後,就會去遍歷CommandLineRunner介面的例項並執行它們的run方法。

@Order註解規定了CommandLineRunner例項的執行順序。@order(value=2) value 的值從小到大依次執行。

方法二:

spring同樣也可以實現該功能

通過一個類去實現InitializingBean,重寫 afterPropertiesSet該方法。凡是繼承該介面的類,在初始化bean的時候會執行該方法。


相關推薦

關於spring boot啟動載入 一些初始資料

方法一: 如何載入一些啟動就需要的初始化資料呢? 為了解決這樣的問題,spring Boot 為我們提供了一個方法,通過實現介面 CommandLineRunner 來實現。無需其他配置,只要建立

CommandLineRunner、EnvironmentAware在Spring boot啟動時執行初始程式碼

@Component //如果有多個這樣的類時,可以通過Order指定執行順序,數值越小執行優先順序越高 @Order(value = 0) public class InitSystemConfig implements CommandLineRunner ,Environ

Spring Boot 啟動載入資料 CommandLineRunner

轉載自:https://blog.csdn.net/catoop/article/details/50501710實際應用中,我們會有在專案服務啟動的時候就去載入一些資料或做一些事情這樣的需求。 為了解決這樣的問題,Spring Boot 為我們提供了一個方法,通過實現介面

Spring Boot 2 正確地初始data.sql和schema.sql指令碼

我嘗試了csdn的各種方案,都是在控制檯輸出日誌中沒有執行sql的日誌資訊,然後百度到一個spring2.0方案, 然後就正常輸出了 application.yml配置如下 spring: d

利用Spring的ServletContextAware給ServletContext初始資料

package com.xxx import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; import org.

SpringBoot 原始碼解析 (三)----- Spring Boot 精髓:啟動初始資料

在我們用 springboot 搭建專案的時候,有時候會碰到在專案啟動時初始化一些操作的需求 ,針對這種需求 spring boot為我們提供了以下幾種方案供我們選擇: ApplicationRunner 與 CommandLineRu

spring boot啟動載入系統資料的方法

有時候我們需要在應用啟動或者重啟後做一些工作,比如刪除一些臨時檔案或者Redis中的快取,這在沒有使用Spring Boot之前,在Spring框架下是通過ApplicationListener監聽器來實現的,在Spring Boot下也有一些辦法,可以通過使用CommandLineRunner和A

專案啟動初始資料到記憶體中

有一部分資料庫資料需要在專案啟動時就載入到記憶體中,以減少資料庫互動次數.降低伺服器和資料庫壓力. 可以利用物件初始化靜態變數時,賦予資料庫的資料,已ueser表為例 1、資料庫互動的Mapper,獲取資料庫資訊 public interface UserMapper { @M

Spring-Cloud-Gateway原始碼分析系列 | Spring-Cloud-Gateway之GatewayProperties初始載入

推薦 Spring Boot/Cloud 視訊: 在Spring-Cloud-Gateway初始化時我們在GatewayAutoConfiguration配置中看到了有初始化載入GatewayProperties例項的配置,接下來學習下GatewayPrope

spring在web容器啟動時執行初始方法(四種方式)

需求:在tomcat啟動時開啟一個定時任務,或初始化slor索引 想法:容器啟動時執行方法,最容易想到的就是servlet中可以配置load-on-startup,設定一個正整數也就可以隨容器一起啟動。 問題:上面的方法很好,但是由於定時任務需要去操作資料庫,而專案

Spring在Web容器啟動時執行初始方法

需求:在tomcat啟動時開啟一個定時任務。 想法:容器啟動時執行方法,最容易想到的就是servlet中可以配置load-on-startup,設定一個正整數也就可以隨容器一起啟動。 問題:上面的方法很好,但是由於定時任務需要去操作資料庫,而專案採用了spring的依賴注入來管理物件,而serv

springboot系列文章之啟動初始資料

前言 在我們用springboot搭建專案的時候,有時候會碰到在專案啟動時初始化一些操作的需求,針對這種需求springboot(spring)為我們提供了以下幾種方案供我們選擇: - ApplicationRunner與CommandLineRunner介

spring boot 專案maven打war包,部署Tomcat啟動spring boot載入,專案訪問404

寫了個restful風格的spring boot專案,maven打成war包後部署Tomcat後,啟動頁面沒有看到spring boot載入的資訊,即控制檯沒有打印出那個大大的spring boot 字串,這是spring boot沒有被容器載入,修改方法如下:@Spring

spring 單例多例,預設,懶載入初始呼叫

(1)spring 預設是單例, 單例情況下:所有執行緒對於同一個類共同擁有一個物件,此時如果在類裡面建立一個類變數如下 由於所有執行緒共享一個類物件,所以也共享一個類變數,每次請求都會增加 @Controller @RequestMapping("/user") pub

關於spring載入applicationContext初始bean順序的問題

ApplicationContext.xml內容如下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"

Spring Boot啟動之後,預設載入CommandLineRunner介面和註解兩種方式PostContruct

其實從依賴注入的字面意思就可以知道,要將物件p注入到物件a,那麼首先就必須得生成物件p與物件a,才能執行注入。所以,如果一個類A中有個成員變數p被@Autowired註解,那麼@Autowired注入是發生在A的構造方法執行完之後的。如果想在生成物件時候完成某些初始化操作,而偏偏這些初始化操作又依賴於依賴注入

iOS程式啟動->dyld載入->runtime初始(初識)

程式的開始main函式與Coding生涯的開始hello World! iOS開發中,main函式是我們熟知的程式啟動入口,但實際上並非真正意義上的入口,因為在我們執行程式,再到main方法被呼叫之間,程式已經做了許許多多的事情,比如我們熟知的runtime的初始化

spring boot 啟動載入static final 和靜態工廠

初學spring boot  本來的專案啟動有靜態工廠,很多static final 欄位需要讀取,如果是ssm直接呼叫就行了,換成spring boot就不好用了,在類上加@Configuration就可以了

Spring boot 啟動報錯:com.mongodb.MongoSocketOpenException: Exception opening socket

clas cati helper res connect ava bstr efault def   詳細錯誤信息: com.mongodb.MongoSocketOpenException: Exception opening socket at com.mongodb.

SpringMVC源碼解析-DispatcherServlet啟動流程和初始

instant custom delegate bean 自己的 erro -- true long 在使用springmvc框架,會在web.xml文件配置一個DispatcherServlet,這正是web容器開始初始化,同時會在建立自己的上下文來持有Spring