javascript
SpringBoot基础入门
1.SpringBoot核心相關內(nèi)容
1.1入口類
SpringBoot通常有一個入口類*Application,內(nèi)部有一個main方法,是啟動SpringBoot的入口。使用@SpringBootApplication注解,并包含main方法。
1.2常見注解
@SpringBootApplication :是SpringBoot的核心注解,用于標注程序時一個SpringBoot程序。它是一個組合注解,由多個注解組合而成。
@SpringBootApplication=@ComponentScan+@Configuration+@EnableAutoConfiguration
@SpringBootConfiguration: 一個組合注解,相當于傳統(tǒng)的xml配置文件,包含@Configuration注解。在Spring Boot項目中推薦使用@SpringBootConfiguration替代@Configuration。
@EnableAutoConfiguration :啟用自動配置,該注解會使Spring Boot根據(jù)項目中依賴的jar包自動配置項目的配置項,這也是 springboot 的核心注解之一,我們只需要將項目需要的依賴包加入進來,它會自動幫我們配置這個依賴需要的基本配置。比如我們的項目引入了spring-boot-starter-web依賴,springboot 會自動幫我們配置 tomcat 和 springmvc。
@ComponentScan:組件掃描,可發(fā)現(xiàn)和自動裝配一些bean。默認掃描@SpringBootApplication類所在包的同級目錄以及它的子目錄。
設置不自動裝配:
@SpringBootApplication(exclude = {JpaRepositoriesAutoConfiguration.class, RedisAutoConfiguration.class})
注解內(nèi)部將不需要自動配置的依賴通過exclude參數(shù)指定即可,可以指定多個類
@Bean: 注解在方法上,聲明當前方法返回一個Bean
@PostConstruct:注解在方法上,構造函數(shù)執(zhí)行后執(zhí)行。
@PreDestroy: 注解在方法上,在Bean銷毀前執(zhí)行。
@Lazy(true): 延遲初始化
@Scope:注解在類上,描述spring容器如何創(chuàng)建Bean實例。
@Profile:注解在方法類上 在不同情況下選擇實例化不同的Bean 特定環(huán)境下生效
@Import:用來導入其他配置類。
@ImportResource:用來加載xml配置文件。
2.核心配置文件
2.1yml和properties
SpringBoot使用一個全局配置文件application.properties或者application.yml。properties配置文件見附件。
yml類似于xml,但是yml沒有xml中的 標簽,而是通過空格來表示層級結構:
#相當于 properties 中的server.port=80
server:
? port: 80
#代表 spring.jpa.下面的屬性 每個:之后的代表當前屬性下的屬性
spring:
? jpa:
??? generate-ddl: false
??? show-sql: true
??? hibernate:
????? ddl-auto: update
??? database: mysql
SpringBoot的配置文件可以放在以下幾個地方:
外置,在相對于應用程序運行目錄的/congfig子目錄里。(resources/config)
外置,在應用程序運行的目錄里(resources)
內(nèi)置,在config包
內(nèi)置,在Classpath根目錄
這個列表按照優(yōu)先級排序,也就是說,src/main/resources/config下application.properties覆蓋src/main/resources下application.properties中相同的屬性
如果在相同優(yōu)先級位置同時有application.properties和application.yml,那么application.properties里的屬性里面的屬性就會覆蓋application.yml
如果自己定義了其它的配置文件,如test.properties,可以使用@PropertiesSource注解指定加載配置文件。
@PropertySource("classpath:test.properties")2.2profile多環(huán)境配置
當應用程序需要部署到不同運行環(huán)境時,一些配置細節(jié)通常會有所不同,最簡單的比如日志,生產(chǎn)日志會將日志級別設置為WARN或更高級別,并將日志寫入日志文件,而開發(fā)的時候需要日志級別為DEBUG,日志輸出到控制臺即可。
如果按照以前的做法,就是每次發(fā)布的時候替換掉配置文件,這樣太麻煩了,Spring Boot的Profile就給我們提供了解決方案,命令帶上參數(shù)就搞定。
切換的配置文件必須符合application-xx的命名,其中xx和application.properties中指定的屬性值對應,在application.properties中進行如下配置,系統(tǒng)將會使用application-dev.properties中的配置:
spring.profiles.active=dev?
轉(zhuǎn)載于:https://www.cnblogs.com/sueyyyy/p/9519197.html
總結
以上是生活随笔為你收集整理的SpringBoot基础入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ThreadPoolExecutor的e
- 下一篇: Cocos Creator JS 时间戳