javascript
springboot 禁用tomcat_Spring Boot 面试的十个问题
點擊左上角藍(lán)字,關(guān)注“SpringForAll社區(qū)”
專注分享Spring周邊技術(shù)內(nèi)容
用下面這些常見的面試問題為下一次 Spring Boot 面試做準(zhǔn)備。
在本文中,我們將討論 Spring boot 中最常見的10個面試問題。現(xiàn)在,在就業(yè)市場上,這些問題有點棘手,而且趨勢日益嚴(yán)重。
1. ?@SpringBootApplication 是做什么的?
根據(jù) Spring Boot 文檔, @SpringBootApplication ? 注解相當(dāng)于使用 @Configuration 、@EnableAutoConfiguration 和 @ComponentScan 及其默認(rèn)屬性。Spring Boot 允許開發(fā)人員使用單個注解而不是多個注解。但是,正如我們所知,Spring 提供了松散耦合的特性,我們可以根據(jù)項目的需要單獨使用每個注解。
2. 如何在不使用 basePackages 過濾器的情況下排除任何包?
您可以通過不同方式過濾任意的包。但是,在不接觸組件掃描的情況下,Spring Boot 為實現(xiàn)這個提供了一個復(fù)雜的選項。當(dāng)您使用注解?@SpringApplication?時,可以使用 ?exclude?屬性。請參考以下代碼片段:
@SpringBootApplication(exclude= {Employee.class})public class FooAppConfiguration {}3. 如何禁用一個特定自動配置類?
如果您不想要某個特定的自動配置類生效,您可以使用?@EnableAutoConfiguration??的 ?exclude??屬性。
//By using "exclude"@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})另一方面,如果類不在類路徑上,您可以使用注解的 ?excludeName??屬性并指定完全限定名稱。
//By using "excludeName"@EnableAutoConfiguration(excludeName={Foo.class})另外,Spring Boot 通過使用 ?spring.autoconfigure.exclude??屬性來控制要排除的自動配置類列表的工具。您可以添加到 ?application.properties 中。并且您可以使用逗號分隔添加多個類。
//By using property filespring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration4. 什么是Spring Actuator ?它的優(yōu)勢是什么?
這是 Spring Boot 最常見的面試問題之一。根據(jù) Spring 文檔:
“Actuator 是一個制造術(shù)語,指用于移動或控制某物的機(jī)械裝置。Actuator ?可以通過微小的變化產(chǎn)生大量的運動。”
正如我們所知,Spring Boot 提供了許多自動配置特性,幫助開發(fā)人員快速開發(fā)產(chǎn)品組件。但是,如果您考慮調(diào)試和如何調(diào)試,如果出了什么問題,我們總是需要分析日志并挖掘應(yīng)用程序的數(shù)據(jù)流,以檢查發(fā)生了什么。因此,Spring Actuator 提供了方便的訪問這些類型的功能。它提供了許多特性,例如創(chuàng)建了什么bean、控制器中的映射、CPU 使用情況等等。然后可以將自動收集和審計健康狀況(health)以及指標(biāo)(metric)到您的應(yīng)用程序中。
它提供了一種非常簡單的方法來訪問少數(shù)生產(chǎn)就緒的 ?REST 端點 并從 Web 獲取各種信息。但是通過使用這些端點,您可以做很多事情來查看端點文檔。無需擔(dān)心安全性;如果存在 Spring Security ,那么默認(rèn)情況下使用 Spring ?Security 的內(nèi)容協(xié)商策略來保護(hù)這些端點。或者,我們可以通過 ?RequestMatcher?的幫助來配置自定義安全性。
5. 如何啟用/禁用 Actuator ?
啟用/禁用 ?Actuator ?是很簡單的。最簡單的方法是啟用功能,添加依賴項(Maven/Gradle)到?spring-boot-starter-actuator?,即 Starter 。如果你不想 Actuator ?啟動,則不添加依賴。
Maven 依賴:
org.springframework.boot spring-boot-starter-actuator6. 什么是 Spring ?Initializer ?
這可能不是一個很難的問題,但是面試官總是會檢查應(yīng)聘者的專業(yè)知識。通常你不能總是期待你已經(jīng)準(zhǔn)備好的問題。然而,這幾乎一直是一個非常常見的問題。
Spring ?Initializer 是一個 Web 應(yīng)用程序,它使用快速啟動所需的一切來生成 Spring 啟動項目。和往常一樣,我們需要一個好的項目框架;它可以幫助您正確地創(chuàng)建項目結(jié)構(gòu)/框架。您可以在這里了解關(guān)于 初始化器 的更多信息。
7. ?Actuator ?中的關(guān)閉是什么?
關(guān)閉是一個端點,它允許應(yīng)用程序優(yōu)雅地關(guān)閉。默認(rèn)情況下不啟用此功能。您可以通過在應(yīng)用程序中的 ?application.properties 文件使用?management.endpoint.shutdown.enabled=true?啟用此功能。但是如果你用這個的話要小心。
8. 能夠在 Spring boot 中更改嵌入式 Tomcat 服務(wù)器的端口嗎?
是的,可以更改端口。您可以使用 ?application.properties ?文件改變端口。但是需要提到“?server.port?”(即:server.port=8081)。確保在項目類路徑中有 application.properties ;REST Spring 框架將處理其余部分。如果您提到?server.port=0?,那么它將自動分配任何可用的端口。
9. 我們在 Spring Boot 中能覆蓋或替換嵌入式 Tomcat 服務(wù)器嗎?
是的,我們可以使用 ?Starter 依賴項將嵌入式 Tomcat ?替換為任何其他服務(wù)器。您可以根據(jù)需要使用 ?spring-boot-starter-jetty??或 ?spring-boot-start -undertow??作為每個項目的依賴項。
10. 我們可以在 Spring Boot 應(yīng)用程序中禁用默認(rèn) web ?服務(wù)器嗎?
Spring 的主要優(yōu)點是提供靈活性來構(gòu)建松散耦合的應(yīng)用程序。Spring 提供了在快速配置中禁用 Web 服務(wù)器的功能。是的,我們可以使用 ?application.properties ?來配置 ?web ?應(yīng)用程序類型,即:spring.main.web-application-type=none??。
祝一切順利!
來源:http://www.spring4all.com/article/15119?
推薦閱讀:
《深入理解 Java 內(nèi)存模型》讀書筆記
面試-基礎(chǔ)篇
Spring Boot 2.0 遷移指南
SpringBoot使用Docker快速部署項目
上篇好文:
為什么選擇 Spring 作為 Java 框架?
右上角按鈕分享給更多人哦~
來都來了,點個在看再走吧~~~
總結(jié)
以上是生活随笔為你收集整理的springboot 禁用tomcat_Spring Boot 面试的十个问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: org.hibernate.QueryT
- 下一篇: 已知矩阵 matlab,在MATLAB中