97色伦色在线综合视频,无玛专区,18videosex性欧美黑色,日韩黄色电影免费在线观看,国产精品伦理一区二区三区,在线视频欧美日韩,亚洲欧美在线中文字幕不卡

怎么推廣我做的網站贛州市開發(fā)區(qū)建設局網站

鶴壁市浩天電氣有限公司 2026/01/24 10:33:56
怎么推廣我做的網站,贛州市開發(fā)區(qū)建設局網站,正規(guī)app軟件開發(fā)費用,燕趙邯鄲網站建設Spring Boot Starter 制作原理 Spring Boot Starter 是 Spring Boot 的核心特性之一#xff0c;它通過自動配置簡化了依賴管理和配置。下面詳細解釋其制作原理#xff1a; 一、核心概念 1. Starter 的本質 依賴集合包#xff1a;Starter 本身是一個空的 JAR 文件#xf…Spring Boot Starter 制作原理Spring Boot Starter 是 Spring Boot 的核心特性之一它通過自動配置簡化了依賴管理和配置。下面詳細解釋其制作原理一、核心概念1.Starter 的本質依賴集合包Starter 本身是一個空的 JAR 文件只包含pom.xml用于聚合相關依賴自動配置類通過spring.factories或META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件提供自動配置類配置屬性類定義可通過application.properties或application.yml配置的屬性二、關鍵組件1.自動配置原理java復制下載Configuration // 聲明為配置類 ConditionalOnClass // 類路徑下存在指定類時生效 ConditionalOnProperty // 配置文件中存在指定屬性時生效 EnableConfigurationProperties // 啟用配置屬性綁定 AutoConfigureAfter // 指定自動配置順序 public class MyAutoConfiguration { Bean ConditionalOnMissingBean // 容器中不存在該 Bean 時創(chuàng)建 public MyService myService(MyProperties properties) { return new MyService(properties); } }2.條件注解Spring Boot 提供了豐富的條件注解ConditionalOnClass類路徑存在指定類ConditionalOnMissingBean容器中不存在指定 BeanConditionalOnProperty配置屬性匹配條件ConditionalOnWebApplicationWeb 應用環(huán)境ConditionalOnExpressionSpEL 表達式條件三、制作步驟1.項目結構text復制下載my-spring-boot-starter/ ├── src/main/java/ │ └── com/example/ │ ├── MyService.java // 核心服務類 │ ├── MyProperties.java // 配置屬性類 │ ├── MyAutoConfiguration.java // 自動配置類 │ └── MyStarterApplication.java // 可選演示應用 ├── src/main/resources/ │ └── META-INF/ │ ├── spring.factories // 傳統(tǒng)方式Spring Boot 2.6- │ └── spring/ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports // 新方式Spring Boot 2.7 └── pom.xml2.pom.xml 配置xml復制下載運行?xml version1.0 encodingUTF-8? project modelVersion4.0.0/modelVersion groupIdcom.example/groupId artifactIdmy-spring-boot-starter/artifactId version1.0.0/version properties spring-boot.version3.1.0/spring-boot.version /properties dependencyManagement dependencies dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-dependencies/artifactId version${spring-boot.version}/version typepom/type scopeimport/scope /dependency /dependencies /dependencyManagement dependencies !-- 必須依賴 -- dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-autoconfigure/artifactId /dependency dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-configuration-processor/artifactId optionaltrue/optional /dependency !-- 你的 Starter 需要的依賴 -- dependency groupIdcom.example/groupId artifactIdmy-library/artifactId version1.0.0/version /dependency /dependencies /project篇幅限制下面就只能給大家展示小冊部分內容了。整理了一份核心面試筆記包括了Java面試、Spring、JVM、MyBatis、Redis、MySQL、并發(fā)編程、微服務、Linux、Springboot、SpringCloud、MQ、Kafc需要全套面試筆記及答案【點擊此處即可/免費獲取】???3.配置屬性類java復制下載ConfigurationProperties(prefix my.service) public class MyProperties { private String name default; private int timeout 5000; private ListString servers new ArrayList(); // getters and setters }4.自動配置類java復制下載Configuration EnableConfigurationProperties(MyProperties.class) ConditionalOnClass(MyService.class) AutoConfigureAfter(DataSourceAutoConfiguration.class) public class MyAutoConfiguration { Bean ConditionalOnMissingBean public MyService myService(MyProperties properties) { MyService service new MyService(); service.setName(properties.getName()); service.setTimeout(properties.getTimeout()); return service; } Bean ConditionalOnMissingBean ConditionalOnProperty(prefix my.service, name enabled, havingValue true, matchIfMissing true) public MyFeature myFeature() { return new MyFeature(); } }5.注冊自動配置Spring Boot 2.7推薦創(chuàng)建文件src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.importstext復制下載com.example.MyAutoConfigurationSpring Boot 2.6 及之前創(chuàng)建文件src/main/resources/META-INF/spring.factoriesproperties復制下載org.springframework.boot.autoconfigure.EnableAutoConfiguration com.example.MyAutoConfiguration四、高級特性1.自定義條件注解java復制下載Target({ElementType.TYPE, ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Documented Conditional(OnMyCondition.class) public interface ConditionalOnMyFeature { String value(); } public class OnMyCondition implements Condition { Override public boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata) { // 自定義條件判斷邏輯 return true; } }2.配置提示IDE 支持創(chuàng)建additional-spring-configuration-metadata.jsonjson復制下載{ properties: [ { name: my.service.name, type: java.lang.String, description: 服務名稱, defaultValue: default }, { name: my.service.timeout, type: java.lang.Integer, description: 超時時間毫秒, defaultValue: 5000 } ] }3.多模塊 Starterxml復制下載運行!-- 父模塊 -- artifactIdmy-spring-boot-starter/artifactId packagingpom/packaging modules modulemy-spring-boot-autoconfigure/module modulemy-spring-boot-starter-core/module /modules !-- 自動配置模塊 -- artifactIdmy-spring-boot-autoconfigure/artifactId !-- 依賴模塊 -- artifactIdmy-spring-boot-starter/artifactId dependencies dependency groupIdcom.example/groupId artifactIdmy-spring-boot-autoconfigure/artifactId /dependency /dependencies篇幅限制下面就只能給大家展示小冊部分內容了。整理了一份核心面試筆記包括了Java面試、Spring、JVM、MyBatis、Redis、MySQL、并發(fā)編程、微服務、Linux、Springboot、SpringCloud、MQ、Kafc需要全套面試筆記及答案【點擊此處即可/免費獲取】???五、最佳實踐1.命名規(guī)范官方 Starterspring-boot-starter-{name}第三方 Starter{name}-spring-boot-starter2.設計原則按需加載使用條件注解確保只在合適的環(huán)境下生效默認配置提供合理的默認值減少用戶配置外部化配置所有配置都應支持外部化向后兼容版本升級時保持 API 兼容性3.測試 Starterjava復制下載SpringBootTest EnableConfigurationProperties class MyAutoConfigurationTest { Autowired(required false) private MyService myService; Test void testAutoConfiguration() { assertThat(myService).isNotNull(); } }六、工作原理總結啟動時掃描Spring Boot 啟動時掃描所有META-INF/spring.factories或AutoConfiguration.imports文件加載配置類讀取并加載所有自動配置類條件評估根據條件注解判斷是否啟用配置創(chuàng)建 Bean滿足條件時自動配置類中的Bean方法被執(zhí)行屬性綁定ConfigurationProperties將配置文件中的屬性綁定到 Bean通過這種機制Starter 能夠智能地根據項目環(huán)境和配置自動裝配所需的組件大大簡化了 Spring 應用的配置工作。
版權聲明: 本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若內容造成侵權/違法違規(guī)/事實不符,請聯系我們進行投訴反饋,一經查實,立即刪除!

泰安網站建設入門推薦建設網站的工作

泰安網站建設入門推薦,建設網站的工作,ui設計和前端開發(fā)哪個好,單位網站建設費用什么會計科目目錄開發(fā)背景與目標技術架構設計核心功能模塊創(chuàng)新與優(yōu)勢應用價值項目技術支持論文大綱核心代碼部分展示可定制開發(fā)之

2026/01/22 22:55:01

黃埔網站建設(信科網絡)網站店鋪建設

黃埔網站建設(信科網絡),網站店鋪建設,傻瓜式網站源碼,網站建設與維護試卷分析優(yōu)化網絡配置:PF防火墻設置指南 1. 跳過特定接口 skip 選項可以讓你將特定接口排除在所有PF處理之外。其效果與

2026/01/23 05:14:01

wordpress 安全掃描上海網站設計知名樂云seo

wordpress 安全掃描,上海網站設計知名樂云seo,黃石網站建設(樂云踐新),代運營服務使用 gawk 調試器:示例及命令詳解 在編程過程中,調試是解決代碼問題的重要環(huán)節(jié)。gawk 作為一個強

2026/01/23 07:39:01

建設廳網站174號文led行業(yè)網站建設方案

建設廳網站174號文,led行業(yè)網站建設方案,金屬網站模板,網站建設關于網上書店圖片素材第一章#xff1a;R與Python庫版本同步的背景與挑戰(zhàn)在數據科學和統(tǒng)計分析領域#xff0c;R 與 Pyth

2026/01/22 23:56:01