欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文帶你輕松應(yīng)對(duì)Springboot面試小結(jié)

  發(fā)布時(shí)間:2020-05-12 16:32:13   作者:經(jīng)典雞翅   我要評(píng)論
這篇文章主要介紹了一文帶你輕松應(yīng)對(duì)Springboot面試小結(jié),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

1. SpringBoot 簡(jiǎn)介

SpringBoot 是簡(jiǎn)化 Spring 應(yīng)用開發(fā)的一個(gè)框架。他整合了 Spring 的技術(shù)棧,提供各種標(biāo)準(zhǔn)化的默認(rèn)配置。使得我們可以快速開發(fā) Spring 項(xiàng)目,免掉 xml 配置的麻煩。降低 Spring 項(xiàng)目的成本。

2. SpringBoot 的優(yōu)缺點(diǎn)

使編碼配置部署都變得很簡(jiǎn)單。缺點(diǎn)可能就是自動(dòng)注入的 bean ,不是特別清楚,有可能會(huì)沖突。

3. SpringBoot 如何固定版本

一種是 parenet 的時(shí)候直接固定。

一種是通過(guò) dependcy 來(lái)固定,因?yàn)榭赡墚?dāng)前項(xiàng)目已經(jīng)有父項(xiàng)目。

4. SpringBoot 的使用方式

maven 中父項(xiàng)目導(dǎo)入 Springboot 的啟動(dòng)器。然后編寫一個(gè)主程序打上 SpringBootApplication 注解。通過(guò) run 方法就可以啟動(dòng)。

5. SpringBoot 自動(dòng)配置原理

首先可以看到啟動(dòng)類上面有一個(gè) SpringBootApplication 注解,點(diǎn)進(jìn)去之后,又 EnableAutoConfiguration 注解。然后再進(jìn)去,發(fā)現(xiàn)有個(gè) @Import 注解,其導(dǎo)入的是 EnableAutoConfigurationImportSelector 類。再看這個(gè)類,他是集成了一個(gè)抽象的 AutoConfigutationimportSelector 。再往上就是接口 ImportSelector 。然后如果實(shí)現(xiàn)了接口的 selectImport 接口就會(huì)將其中的返回的數(shù)組全部加載到 Spring 容器中。其中實(shí)現(xiàn)的最主要的地方是 getCandidateConfigurations 方法。那個(gè)方法內(nèi)部實(shí)現(xiàn)就是回去讀取 meta-inf 下的 spring.factories 。所以主要在那里面配置的類就都會(huì)被自動(dòng)加載。

6. SpringBoot 配置文件注入

注入實(shí)體類中,實(shí)體類可以使用 @ConfigurationProperties(prefix = "person") 注解。

7. @Value 和 @ConfigurationProperties 比較

8.@PropertySource

加載指定的配置文件。如下,如果不聲明的話,將從主配置文件加載。

9.@ImportResource

導(dǎo)入 Spring 的配置文件,讓配置文件里面的內(nèi)容生效;這種方式比如一個(gè)類沒(méi)有使用 @Componet 注解注冊(cè)進(jìn)容器,則使用自動(dòng)裝配 autowired 找不到。引入文件后,即可找到。

Spring Boot 里面沒(méi)有 Spring 的配置文件,我們自己編寫的配置文件,也不能自動(dòng)識(shí)別;

想讓 Spring 的配置文件生效,加載進(jìn)來(lái); @**ImportResource** 標(biāo)注在一個(gè)配置類上

10. springboot 的 profile 加載

在配置文件的時(shí)候,我們可以建立多個(gè)。用 - 進(jìn)行結(jié)尾。通過(guò)主配置文件,配置 profiles 的 active 就可以指定加載文件。

在同一個(gè)文件中, yml 文件支持文檔塊的寫法,為 --- 。

11. SpringBoot 激活指定 profile 的幾種方式

第一種:直接在配置文件中通過(guò) active 指定

第二種:通過(guò) java -jar 的參數(shù)指定

第三種:通過(guò)虛擬機(jī)參數(shù)

12. SpringBoot 項(xiàng)目?jī)?nèi)部配置文件加載順序

順序如下;

優(yōu)先級(jí)由高到底,高優(yōu)先級(jí)的配置會(huì)覆蓋低優(yōu)先級(jí)的配置;

SpringBoot 會(huì)從這四個(gè)位置全部加載主配置文件; ** 互補(bǔ)配置 ** ;

我們還可以通過(guò) spring.config.location 來(lái)改變默認(rèn)的配置文件位置

項(xiàng)目打包好以后,我們可以使用命令行參數(shù)的形式,啟動(dòng)項(xiàng)目的時(shí)候來(lái)指定配置文件的新位置;指定配置文件和默認(rèn)加載的這些配置文件共同起作用形成互補(bǔ)配置;

13. SpringBoot 外部配置文件加載順序

這個(gè)挺多的,我們就幾個(gè)重要的。

高優(yōu)先級(jí)的會(huì)覆蓋低優(yōu)先級(jí)的。

命令行上的參數(shù)配置是優(yōu)先級(jí)最高的。

jar 包外的帶 profile 的配置文件。

jar 包內(nèi)的帶 profile 的配置文件。

jar 包外的不帶 profile 的配置文件。

jar 包內(nèi)的不帶 profile 的配置文件。

14. Springboot 日志關(guān)系

SpringBoot 默認(rèn)使用的 slf4j+logback 。引入 logging-starter 就可以使用。能自動(dòng)適配其他日志。只需要將日志里面的 commons-logging 移除。就會(huì)自動(dòng)引入其他日志。

使用 LoggerFactory 可以獲得 logger 。通過(guò) logger 就可以記錄日志。

日志的一些配置

logging.level.com.atguigu=trace 指定打印級(jí)別

logging.file=G:/springboot.log 指定日志生成路徑

logging.path=/spring/log 指定日志生成相對(duì)路徑

logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n 指定控制臺(tái)輸出格式

logging.pattern.file=%d{yyyy-MM-dd} === [%thread] === %-5level === %logger{50} ==== 指定文件中日志輸出格式

15. SpringBoot 如何擴(kuò)展 SpringMVC 的配置

通過(guò)建立自己的類繼承 WebMvcConfigurerAdapter ,在類上面打上注解 @Configuration 。然后重寫里面的方法即可。容器中的所有的 WebMvcConfigurer 會(huì)一起起作用。

如果我們不想使用 mvc 的自動(dòng)配置,全部使用自己的??梢栽谂渲妙惿显黾幼⒔?@EnableWebMvc 。這個(gè)注解可以導(dǎo)入一個(gè) webmvcconfigurationsupport 的類。然后 mvc 的自動(dòng)配置類上的注解有這么一句話,有一個(gè)條件注解,當(dāng)沒(méi)有上面那個(gè)類的時(shí)候,才生效。

16. SpringBoot 如何注冊(cè) filter , servlet , listener

編寫好一個(gè) servlet 后,聲明一個(gè)類,返回 ServletRegistrationBean 。通過(guò)里面的方法將 servlet 包裝一下返回。

編寫一個(gè) filter 。通過(guò) FilterRegister 包裝。

編寫一個(gè) listener ,實(shí)現(xiàn)注冊(cè) bean 。

17. SpringBoot 切換成 undertow

先排除掉 tomcat ,然后再引入 undertow 就行了。

18. SpringBoot 的任務(wù)

異步任務(wù)在啟動(dòng)類上,增加注解 @EnableAsync ,此時(shí)就開啟了。然后對(duì)于異步的方法,打上注解 @Async 。

定時(shí)任務(wù),在啟動(dòng)類上,打上注解 @EnableScheduling ,需要定時(shí)的方法使用 @Scheduled 注解。這里面分為秒,分,小時(shí),日期,月份,星期。

郵件任務(wù)

引入郵件任務(wù)啟動(dòng)器。在配置文件中進(jìn)行配置。通過(guò) javamailsenderimpl 來(lái)發(fā)送。可以發(fā)送簡(jiǎn)單的郵件和復(fù)雜的郵件 SimpleMailMessage 和 MimeMessage 。

19. SpringBoot 熱部署

jrebal 是收費(fèi)的。

一般使用 springboot-dev-tool 。通過(guò) ctrl+f9 進(jìn)行熱部署。開啟 idea 的自動(dòng)編譯。

20. SpringBoot 的監(jiān)控

引入 actuatro 的監(jiān)控器。配置文件需要配置安全關(guān)閉。 management.security.enabled=false 。可以配置 endpoint 的 shutdown 的 enable 開啟,就可以直接關(guān)閉了。

21. SpringBoot 整合 redis

引入 redis 的啟動(dòng)器。 data-redis 。引入后再配置文件進(jìn)行配置 redis 的 host 。然后通過(guò) redistemplate 就可以進(jìn)行操作了。會(huì)亂碼,默認(rèn)使用的是 jdk 的序列化 json 器。需要改成 jackson 。自己實(shí)現(xiàn)一個(gè) RedisTmeplate 。泛型為 object , object 。再實(shí)現(xiàn) CacheManager 。就會(huì)發(fā)現(xiàn)緩存變成 json 形式了。

到此這篇關(guān)于一文帶你輕松應(yīng)對(duì)Springboot面試小結(jié)的文章就介紹到這了,更多相關(guān)Springboot面試內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

相關(guān)文章

  • 35道SpringBoot面試題及答案(小結(jié))

    這篇文章主要介紹了35道SpringBoot面試題及答案(小結(jié))的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-05-21
  • Spring Boot 面試不被干趴下

    這篇文章主要介紹了Spring Boot 面試的一些知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2019-04-15

最新評(píng)論