W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
與依賴運(yùn)行時(shí)反射和代理的其他框架不同,Micronaut 使用編譯時(shí)數(shù)據(jù)來(lái)實(shí)現(xiàn)依賴注入。
這是 Google Dagger 等工具采用的類似方法,它主要是為 Android 設(shè)計(jì)的。另一方面,Micronaut 專為構(gòu)建服務(wù)器端微服務(wù)而設(shè)計(jì),并提供許多與其他框架相同的工具和實(shí)用程序,但不使用反射或緩存過(guò)多的反射元數(shù)據(jù)。
Micronaut IoC 容器的目標(biāo)總結(jié)為:
使用反射作為最后的手段
避免代理
優(yōu)化啟動(dòng)時(shí)間
減少內(nèi)存占用
提供清晰易懂的錯(cuò)誤處理
請(qǐng)注意,Micronaut 的 IoC 部分可以完全獨(dú)立于 Micronaut 用于您希望構(gòu)建的任何應(yīng)用程序類型。
為此,請(qǐng)配置您的構(gòu)建以包含 micronaut-inject-java 依賴項(xiàng)作為注釋處理器。
最簡(jiǎn)單的方法是使用 Micronaut 的 Gradle 或 Maven 插件。以 Gradle 為例:
配置 Gradle
plugins {
id 'io.micronaut.library' version '1.3.2' (1)
}
version "0.1"
group "com.example"
repositories {
mavenCentral()
}
micronaut {
version = "3.8.5" (2)
}
定義 Micronaut 庫(kù)插件
指定要使用的 Micronaut 版本
IoC 的入口點(diǎn)是 ApplicationContext 接口,其中包括一個(gè)運(yùn)行方法。下面的例子演示了它的使用:
運(yùn)行 ApplicationContext
try (ApplicationContext context = ApplicationContext.run()) { (1)
MyBean myBean = context.getBean(MyBean.class); (2)
// do something with your bean
}
運(yùn)行 ApplicationContext
從 ApplicationContext 中檢索一個(gè) bean
該示例使用 Java try-with-resources 語(yǔ)法來(lái)確保 ApplicationContext 在應(yīng)用程序退出時(shí)干凈地關(guān)閉。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: