Perbezaan Di Antara Component Service Controller Dan Repository Dalam Spring Framework


Sebelum mengetahui perbezaan di antara @Component, @Service, @Controller, dan @Repository annotations dalam Spring framework, adalah penting untuk kita memahami peranan @Component annotation dalam Spring.
Pada permulaan Spring, semua beans diisytiharkan dalam satu XML file. Ia agak berserabut dalam projek besar dan Spring mengetahui masalah ini. Pada versi seterusnya Spring memperkenalkan annotation-based dependency injection dan Java-based configuration.
Sejak Spring 2.5 annotation-based dependency injection diperkenalkan di mana Spring bean diimbas dan didaftarkan secara automatik menggunakan @Component annotation pada class.
Ini bermakna tidak perlu lagi isytiharkan bean menggunakan tag <bean> dan inject dependency, sebaliknya semuanya dilakukan secara automatik. Fungsi ini dihidupkan dan dimatikan menggunakan tag <context:component-scan>.
Apa @Service, @Controller, and @Repository annotation buat?Mereka adalah bentuk khusus buat @Component annotation untuk situasi tertentu. Kita tak gunakan @Component untuk controller class dalam Spring MVC, sebaliknya kita guna @Controller yang lebih mudah difahami dan sesuai.
Menggunakan @Controller annotation kita lakukan dua benda iaitu kita isytiharkan class ini adalah sejenis Spring bean yang patut dijana dan diurus oleh Spring ApplicationContext, dan kita mengisytiharkan bahawa class ini adalah sejenis controller dalam setup MVC (yang akan digunakan oleh fungsi-fungsi dan tools khusus buat web).
Contohnya DispatcherServlet akan mencari @RequestMapping dalam classes yang ditandakan menggunakan @Controller tetapi tidak dalam @Component.
Ini bermakna @Component dan @Controller adalah sama untuk penghasilan bean dan dependency injection cuma @Controller adalah bentuk khusus buat @Component. Jika kita gantikan @Controller annotation dengan @Compoenent, Spring boleh kesan dan daftar controller class itu secara automatik tetapi ia takkan bekerja seperti yang diharapkan apabila berkaitan dengan request mapping.
Serupa juga dengan @Service annotation dan @Repository annotation, mereka adalah bentuk khusus @Component untuk service layer dan persistence layer. Spring bean dalam service layer patut ditandakan sebagai @Service bukannya @Component annotation dan spring bean dalam persistence layer patut ditandakan dengan @Repository annotation.
Menggunakan annotation khusus kita menyelam sambil minum air. Pertama, mereka akan dilayan sebagai Spring bean dan kedua kita boleh letak kelakuan khusus yang diperlukan oleh layer tersebut.
Contohnya @Repository tidak hanya membantu dalam tetapan berasaskan annotation tetapi juga akan menangkap Platform specific exceptions dan mencampak mereka sebagai satu Spring unchecked exception.
Kita juga harus umumkan org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor sebagai Spring bean dalam application context.
Bean post processor tersebut akan menambah advisor kepada semua bean yang ditandakan dengan @Repository supaya semua platform-specific exceptions ditangkap dan dicampak sebagai Spring unchecked data access exceptions.
Bagaimana Component Scanning berlaku dalam Spring?Sejak Spring 2.0, Spring sediakan <context:component-scan> dan annotation-driven dependency injection untuk kesan dan daftar Spring bean tanpa perlu isytiharkan mereka dalam XML file.
Tetapi secara umumnya ia hanya kesan @Component dan tidak mencari @Controller, @Service dan @Repository. Mereka diimbas kerana mereka ditandakan sebagai @Component.
Cuba perhatikan pada definisi @Controller, @Service, dan @Repository annotation:
@Component
public @interface Service {
….
}
@Component
public @interface Repository {
….
}
@Component
public @interface Controller {

}
Jadi tidak salah untuk kita katakan bahawa @Controller, @Service, dan @Repository adalah jenis khusus daripada @Component annotation. <context:component-scan> akan kutip mereka dan daftar mereka sebagai beans sama seperti apabila mereka ditandakan sebagai @Component.
Mereka dikesan kerana mereka sendiri ditandakan dengan @Component annotation. Jika kita buat custom annotation dan tandakannya dengan @Component, ia juga akan dikesan oleh <context:component-scan>.
Boleh baca lebih lanjut mengenai dependency injection (suntikan kebergantungan), auto-wiring dan pelbagai bentuk konfigurasi dalam Spring seperti menggunakan XML based, annotation dan Java configuration.
 
RumusanIni adalah rumusan mengenai @Component, @Service, @Controller, dan @Repository annotation dalam Spring Framework:
@Component adalah stereotype umum untuk semua component atau bean yang diurus Spring. @Repository adalah stereotype untuk persistence layer yang menguruskan capaian data.@Service adalah stereotype untuk service layer yang menyimpan business logic.@Controller adalah stereotype untuk presentation layer (Spring-MVC).Secara ringkasnya: gunakan annotation paling sesuai berdasarkan layer yang diduduki oleh class tersebut.
Rujukanhttps://javarevisited.blogspot.com/2017/11/difference-between-component-service.html

Artikel ini hanyalah simpanan cache dari url asal penulis yang berkebarangkalian sudah terlalu lama atau sudah dibuang :

http://www.interpretzz.com/2020/04/perbezaan-di-antara-component-service.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Interpretzz+%28interpretZZ%29

Kempen Promosi dan Iklan
Kami memerlukan jasa baik anda untuk menyokong kempen pengiklanan dalam website kami. Serba sedikit anda telah membantu kami untuk mengekalkan servis percuma aggregating ini kepada semua.

Anda juga boleh memberikan sumbangan anda kepada kami dengan menghubungi kami di sini
Kebenaran Operasi Gunting Rambut Bukti Jurang Antara Menteri Dengan Rakyat

Kebenaran Operasi Gunting Rambut Bukti Jurang Antara Menteri Dengan Rakyat

papar berkaitan - pada 12/4/2020 - jumlah : 224 hits
MA AYSIAKINI Keputusan kerajaan untuk membenarkan kedai gunting rambut dan beroperasi semula sepanjang tempoh perintah kawalan pergerakan mencerminkan jurang antara kabinet dengan orang awam kata pemimpin veteran DAP Lim Kit Siang Episod ke...
Ciri Drag And Drop Rentas Platform Kini Boleh Dilakukan Antara Peranti Windows Dan Samsung

Ciri Drag And Drop Rentas Platform Kini Boleh Dilakukan Antara Peranti Windows Dan Samsung

papar berkaitan - pada 13/4/2020 - jumlah : 231 hits
Pada Februari lalu ciri salin dan tampal rentas platform yang membolehkan kandungan dari peranti Android ditampal ke peranti Windows 10 diberikan kepada Samsung Galaxy S20 S20 S20 Ultra dan Z Flip menerusi aplikasi Your Phone Aplikasi Your ...
Kadar Kesembuhan Covid 19 Di Malaysia Antara Yang Tertinggi Di Dunia

Kadar Kesembuhan Covid 19 Di Malaysia Antara Yang Tertinggi Di Dunia

papar berkaitan - pada 13/4/2020 - jumlah : 344 hits
Meskipun tempoh Perintah Kawalan Pergerakan dilajutkan namun ramai sudah boleh menarik nafas lega apabila Malaysia mencatatkan kadar kesembuhan 45 peratus menjadikan Malaysia antara negara dengan kadar kesembuhan tertinggi di dunia Dimana k...
Antara Artis Melayu Dgn Ketua Pemuda Mca

Antara Artis Melayu Dgn Ketua Pemuda Mca

papar berkaitan - pada 12/4/2020 - jumlah : 290 hits
MOHD ZULAIMI KAZINSemasa Pengunguman Kali Pertama Bantuan Perihatin adalah beberapa artis melayu menyuarakan nasib mereka yg tidak disenaraikan Maka riuh rendah netizen melayu mengutuk dan menghina mereka selepas itu nereka minta maaf dan m...
Perintahkawalanpergerakan Kedai Gunting Rambut Dobi Antara 9 Sektor Yang Dibenar Beroperasi

Perintahkawalanpergerakan Kedai Gunting Rambut Dobi Antara 9 Sektor Yang Dibenar Beroperasi

papar berkaitan - pada 11/4/2020 - jumlah : 231 hits
Kerajaan mengumumkan pelonggaran sembilan industri untuk beroperasi sepanjang tempoh PKP termasuk perkhidmatan gunting rambut dan dobi Dalam satu kenyataan keputusan berkenaan diambil menerusi mesyuarat kabinet pada Rabu lalu Berikut adalah...
Ketua Pemuda Armada Antara 6 Ditahan Miliki Air Ketum

Ketua Pemuda Armada Antara 6 Ditahan Miliki Air Ketum

papar berkaitan - pada 11/4/2020 - jumlah : 342 hits
Tapah Ketua pemuda sebuah parti politik antara enam individu yang ditahan memiliki air ketum dalam satu serbuan di sebuah rumah di Bidor Jaya semalam Kesemua lelaki berusia lingkungan 22 hingga 45 tahun itu ditangkap sekitar jam 4 30 petang...
Posting Blog Menarik Antara Rok Mini Dan Baju Gamis

Posting Blog Menarik Antara Rok Mini Dan Baju Gamis

papar berkaitan - pada 11/4/2020 - jumlah : 252 hits
POSTING atau postingan adalah isi blog berupa teks dan atau foto video podcast Umumnya blogger mengisi blognya dengan konten artikel plus foto dan video Belakangan artikel panjang trending terkait SEO Katanya artikel panjang lebar alias kom...
Beza Antara Pengerusi Glc Dizaman Ph Cuba Anda Lihat Pengalaman Mereka

Beza Antara Pengerusi Glc Dizaman Ph Cuba Anda Lihat Pengalaman Mereka

papar berkaitan - pada 14/4/2020 - jumlah : 512 hits
Senarai Chairman Pengerusi GLC utama yang dilantik di bawah Pentadbiran PH 1 Petronas Datuk Ahmad Nizam SallehBeliau pernah menyandang jawatan sebagai Managing Director dam CEO Engen Ltd dan Vice President Corporate Services di Petronas Gas...
Antara Risiko Mendapat Jangkitan Covid 19 Ketika Memakai Glove

Antara Risiko Mendapat Jangkitan Covid 19 Ketika Memakai Glove

papar berkaitan - pada 14/4/2020 - jumlah : 195 hits
Mungkin tidak semua tahu bahawa penggunaan glove boleh menjadi punca untuk virus COVID 19 merebak Oleh yang demikian Ohmedia nak kongsi beberapa perkara yang berisiko untuk mendapat jangkitan dari penggunaan glove 1 Kurang Mencuci TanganDis...
Sah Kes Najib Razak Cacat

Slot Qris Explained The Key To Faster And Safer Gaming Transactions

Rahsia Kawal Gula Dalam Darah Supaya Tak Melompat Lompat Lagi

Tremendous Nadi Collaboration

Kebaikan Rawatan Rendaman Kaki Bersama Garam Bukit Dan Ais Batu

Salam Dalam Salat Jenazah Sekali Atau Dua Kali

10 Praktik Keberlanjutan Yang Wajib Diterapkan Di Tahun 2025

Takwim Cuti Persekolahan Tahun 2025 2026


echo '';
5 Insiden Jalan Sesak Yang Berlaku Lebih 24 Jam Durasinya

Senarai Lagu Tugasan Konsert Minggu 6 Gegar Vaganza 2024 Musim 11

Keputusan Markah Peserta Konsert Minggu 5 Gegar Vaganza 2024 Musim 11

10 Filem Drama Seram Melayu Berhantu Terbaru 2024 2025 Mesti Tonton

One In A Million 2024 Senarai Peserta Juri Format Pemarkahan Hadiah Dan Segala Info Saksikan Live Di TV3 Malaysia Dan Tonton Calpis Soda OIAM


Redha Di Dalam Rumah Tangga

Ioi City Mall Gears Up For A Meletop 2025 With A Star Studded New Year S Eve Celebration

Farhan Mustapha Mutiara Hati Chord

The West Isn T Dying But It S Working On It

Malaysian Muslims Baffled How Having A Pic With Christmas Tree Santa Claus Can Shake Their Faith

Have A Relaxing Day With Friends Over Lunch Or Dinner