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.
 
Rumusan Ini 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.
Rujukan https://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

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
Benefits Of A Professional Sofa Upholstery Service In Kl

Benefits Of A Professional Sofa Upholstery Service In Kl

papar berkaitan - pada 9/11/2023 - jumlah : 215 hits
There are many benefits of engaging a professional sofa upholstery service in KL for your home or office A professional sofa upholstery service usually involves and replacing the part of your sofa that is damaged due to wear and tear over t...
National Service 3 0 Needs Deeper Thought Scrutiny

National Service 3 0 Needs Deeper Thought Scrutiny

papar berkaitan - pada 8/11/2023 - jumlah : 223 hits
ADUN SPEAKS In 2007 I was drafted to join the National Service programme in Kem Segari Manjung Perak Although I hated the idea at first I found PLKN rewarding enough that I considered joining the military However not all trainees experience...
Pas Persefahaman Keharmonian Antara Agama

Pas Persefahaman Keharmonian Antara Agama

papar berkaitan - pada 3/11/2023 - jumlah : 223 hits
Kelantan promosi toleransi terhadap agama lainKOTA BHARU Sejak era pentadbiran Allahyarham Tan Sri Tuan Guru Nik Aziz Nik Mat Kelantan serius mempromosikan sikap hormat dan toleransi terhadap agama agama lain Timbalan Menteri Besar Dato Dr ...
Tak Mahu Siakan Bakat Ini Antara 5 Pelakon Korea Bekerja Lebih 25 Tahun Dalam Industri

Tak Mahu Siakan Bakat Ini Antara 5 Pelakon Korea Bekerja Lebih 25 Tahun Dalam Industri

papar berkaitan - pada 3/11/2023 - jumlah : 257 hits
Tidak mudah bagi seseorang pelakon untuk sentiasa kekal berada di atas Hal ini kerana akan ada banyak pesaing baharu pada masa akan datang ARTIKEL BERKAITAN Kali ini KimchiDaily nak kongsikan 5 pelakon lelaki Korea yang sudah berkerja sebag...
Polis Budak 12 Tahun Antara 3 Wanita Mangsa Eksploitasi Seks

Polis Budak 12 Tahun Antara 3 Wanita Mangsa Eksploitasi Seks

papar berkaitan - pada 5/11/2023 - jumlah : 196 hits
Juwan Riduanbhnews bh com myKENINGAU Polis menyelamatkan tiga wanita termasuk kanak kanak berusia 12 tahun yang disyaki menjadi mangsa pemerdagangan manusia dan eksploitasi seks susulan penahanan tiga lelaki dalam dua serbuan berasingan kel...
Dive Into Excellence Miami Plumber S Guide To Quality Service

Dive Into Excellence Miami Plumber S Guide To Quality Service

papar berkaitan - pada 7/11/2023 - jumlah : 228 hits
Miami s warm beaches and lively culture create a city with its own unique rhythm Behind the scenes keeping the bustling city running smoothly is a tangled plumbing system If you re a Miami homeowner dealing with problems with your sink or p...
Plumbing In Miami Expertise Efficiency And Exceptional Service

Plumbing In Miami Expertise Efficiency And Exceptional Service

papar berkaitan - pada 7/11/2023 - jumlah : 252 hits
The sunny beaches of Miami and the vibrant culture make it a city with a distinct rhythm Behind the scenes what keeps the bustling city running smoothly is an intricate plumbing network It doesn t matter if you re a homeowner suffering from...
Samsung Malaysia Electronics Wins Brand And Service Experience Of The Year At Asian Experience Awards

Samsung Malaysia Electronics Wins Brand And Service Experience Of The Year At Asian Experience Awards

papar berkaitan - pada 29/10/2023 - jumlah : 254 hits
Samsung is always at the forefront of innovation and customer centric initiatives solidifying its position as a leading brand for Malaysian consumers Teng Kah Wee Head of Customer Satisfaction Samsung Malaysia Electronics receiving the awar...
Kali Pertama Di Malaysia Kim Sejeong Senyum Lebar Lihat Ragam Peminat Fan Service On Top

Kali Pertama Di Malaysia Kim Sejeong Senyum Lebar Lihat Ragam Peminat Fan Service On Top

papar berkaitan - pada 31/10/2023 - jumlah : 376 hits
Siapa je tak kenal dengan Kim Sejeong Seorang idol yang bermula daripada reality show Produce 101 dan kini menjadi aktris untuk K Drama popular seperti Business Proposal The Uncanny Counter School 2017 dan macam macam lagilah Buat pertamany...
Sabah Mulls Age Restriction For Mount Kinabalu Climbers

Warga Emas Meninggal Dunia Kkm Jelaskan Tiada Keperluan Wujudkan Unit Kesihatan Di Bazar Ramadan

Miti Probing Case Of Nvidia Powered Servers Shipped To Malaysia

Strengthening Digital Citizenship In Malaysia S Fasih Digital Initiative

Dato Sri Ismail Sabri Biodata Pencapaian Kronologi Kes Sprm

Mp Bahalul Ni Nak Apa Sebenarnya

Telaga Semulajadi Antara Terdalam Dia Dunia

Jika Anda Sering Mengalami Sakit Belakang Atau Sukar Tidur Anda Perlu Cari Tilam Yang Sesuai


echo '';
Info Dan Sinopsis Drama Berepisod Dendam Seorang Madu Slot Tiara Astro Prima

10 Fakta Biodata Amira Othman Yang Digosip Dengan Fattah Amin Penyanyi Lagu Bila Nak Kahwin

5 Tips Macam Mana Nak Ajak Orang Kita Suka Dating Dengan Kita

Info Dan Sinopsis Drama Berepisod Keluarga Itu Slot Lestary TV3

Bolehkah Manusia Transgender Mencapai Klimaks Selepas Bertukar


Selamat Tinggal 0176076730

Importance Of Domain Valuation

6 Ciri Ciri Yang Dicari Lelaki Daripada Seorang Wanita

Lirik Lagu Bae Sobar Bae Raya Den Manjo Deqnee Dn Man Khan Rosalinda

Febian Siapa Kita Chord

4 Senarai Dan Jenis Tombol Pintu Rumah Terbaik Dan Ideal