日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

在Spring@Component vs @Repository vs @Service

發布時間:2023/12/3 javascript 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在Spring@Component vs @Repository vs @Service 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

介紹:

借助Spring的自動掃描功能,它可以自動檢測我們的應用程序中定義的各種bean。 我們通常使用可用的Spring注釋之一來注釋我們的bean-@ Component,@ Repository,@ Service,@ Controller 。

在檢測到bean時,Spring只需將其注冊到ApplicationContext中 。

在本快速教程中,我們將研究@ Component,@ Repository和@Service Spring批注之間的區別。

我們可以使用@Component注釋將bean標記為Spring管理的組件。 換句話說, 它是任何Spring托管組件的通用構造型

我們可以使用<context:component-scan>標記啟用自動掃描。 在自動掃描過程中,Spring將掃描并注冊所有標有@Component注釋的bean:

@Component public class Employee {...}

@Repository批注是@Component批注的特化:

@Component public @interface Repository { }

由于@Repository是@Component的一種 ,因此Spring也會自動掃描并注冊它們。

@Repository是持久層的構造型。 它的工作是捕獲所有與持久性相關的異常,并將其作為Spring DataAccessException重新拋出。

為此,我們應該在應用程序上下文中配置PersistenceExceptionTranslationPostProcessor :

<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>

該bean后處理器將顧問程序添加到所有標有@Repository的 bean。 顧問的職責是將特定于平臺的異常轉換為Spring統一的未經檢查的異常。

就像@Repository一樣,@Service是@Component的另一個特化:

@Component public @interface Service { }

就像@Repository一樣,@Service也是@Component的一種 。 這意味著Spring也將自動檢測此類bean。

@Service批注表示我們的bean擁有一些業務邏輯。 到目前為止,它沒有提供@Component以外的任何特定行為。

盡管如此, 我們仍應使用@Service注釋對服務層bean進行注釋,以使意圖清晰明了。 此外,我們永遠不知道Spring是否會選擇為其添加某些特定功能。

NutShell的差異:

讓我們快速總結一下@ Component,@ Repository和@Service之間的區別:

  • @Component是最通用的構造型,并將bean標記為Spring托管的組件
  • @Service和@Repository批注都是@Component批注的特化
  • @Repository是用于持久層的構造型。 它將所有與持久性相關的異常轉換為Spring的DataAccessException
  • @Service用于服務層的bean。 目前,它不提供@Component以外的任何其他功能
  • 在適用的情況下,總是最好使用@Repository和@Service批注而不是@Component 。 它更清楚地傳達了豆子的意圖

結論:

在本微型教程中,我們了解了流行的Spring批注之間的區別– @ Component,@ Service和@Repository。

總而言之,我們應該始終傾向于根據其特定的圖層約定使用注釋。

翻譯自: https://www.javacodegeeks.com/2019/05/component-repository-service-spring.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的在Spring@Component vs @Repository vs @Service的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。