sql 注射_基本注射/资格赛,范围
sql 注射
這是上周解決的DI / CDI基礎(chǔ)知識的延續(xù)-在本文中,我將討論基礎(chǔ)注入,限定詞和范圍。
在上一個主題中,我們提供了有關(guān)DI / CDI概念的大量信息,我們還討論了如何使用注釋加載這些bean或類-這構(gòu)成了對象的組成并創(chuàng)建了關(guān)于如何進行采樣的示例。以編程方式聲明它們。 在本文中,我們將在注入部分進行更多的介紹,即如何獲取特定資源并將其注入另一個資源以供使用。
那么如何首先注入一個豆子呢?
基本注射
您如何注入豆?
- 使用@Inject <Java-Type> <variable>進行字段注入
- <Java-Type>可以是Java類或Java接口
哪里可以注入豆子?
可以在“注入點”注入豆
- 領(lǐng)域
- 方法參數(shù)
方法可以是:
- 構(gòu)造函數(shù)(對創(chuàng)建的不可變對象有用)>初始化程序
- 設(shè)置方法
- 制片人
- 觀察者
資格賽
如果存在多種實現(xiàn)類型(接口和子類),則限定符用于分配特定的bean。 假設(shè)您有兩個特定接口的候選對象(實現(xiàn)類):
- 界面是人
- 第1類是普通人
- 第2類是非正規(guī)人士
通過引入/創(chuàng)建自己的Qualifier批注,我們可以使用Qualifiers明確指定類的實現(xiàn):
RegularPerson Qualifier批注:
NonRegularPerson限定符注釋:
現(xiàn)在,我們需要創(chuàng)建一個實現(xiàn)類并將其標(biāo)記到我們創(chuàng)建的Qualifier中。
RegularPersonImpl:
NonRegularPersonImpl:
注意:您可以具有盡可能多的限定符–請記住,限定符是用于將邏輯對象實現(xiàn)與其公共接口分開的。
現(xiàn)在已經(jīng)設(shè)置了實現(xiàn),現(xiàn)在我們可以注入類并使用其限定符。
在此示例中,您可以清楚地看到用法,通過引入Qualifier,開發(fā)人員可以通過注釋明確指定實現(xiàn)類型。
在此處下載示例。
您可以利用預(yù)選賽做其他事情嗎?
我將不進一步討論限定詞的其他用途,相反,我將讓您檢查以下示例,以嘗試并探索:
- 多個預(yù)選賽
- 帶有屬性的限定詞
- 具有多個屬性的限定符
范圍
為什么首先需要在對象上作用域? –對于Web應(yīng)用程序,我們需要bean在用戶與應(yīng)用程序進行交互的整個過程中保持狀態(tài),例如,跨多個對服務(wù)器的請求。
開發(fā)人員可以分配給對象的作用域有5種類型:
- @Dependent(默認(rèn))
- 默認(rèn)范圍(如果未指定);
- @RequestScoped
- 在單個HTTP請求中用戶與Web應(yīng)用程序交互期間,將維護對象的狀態(tài)。
- @SessionScoped
- 在多個HTTP請求之間用戶與Web應(yīng)用程序交互期間,將維護對象的狀態(tài)。
- @ApplicationScoped
- 所有用戶與Web應(yīng)用程序交互中的共享狀態(tài)。
- @ConversationScoped
- 會話上下文由應(yīng)用程序明確劃分
我不會在這里詳細(xì)介紹,但我將為您提供可以運行的實際示例。 在此處下載項目。
- 依附
- 請求
- 屆會
- 應(yīng)用
- 會話
下一站:DI / CDI –前進
使用此新功能,您可以清楚地觀察和想象通過簡化許多設(shè)置Web應(yīng)用程序的過程來提高開發(fā)人員的生產(chǎn)率–可以創(chuàng)建限定符以明確區(qū)分具有共同目標(biāo)(按接口)的邏輯/業(yè)務(wù)Bean,進行范圍界定讓開發(fā)人員控制流程并管理對象的狀態(tài)–簡化了直接通過UI通過EL調(diào)用UI的Bean,使其更加簡單明了。
請檢查示例并自行嘗試,最好檢查一個實際示例,而不是僅僅閱讀細(xì)節(jié)和概念。 請享用!
翻譯自: https://www.javacodegeeks.com/2013/08/basic-injection-qualifiers-scope.html
sql 注射
總結(jié)
以上是生活随笔為你收集整理的sql 注射_基本注射/资格赛,范围的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑cpu的风扇怎么拆下来吗(怎样拆下c
- 下一篇: 现场故事:从Log4J迁移到Log4J2