Rangka Kerja Spring menyediakan pelbagai pelaksanaan antara muka ApplicationContext
untuk menyesuaikan diri dengan senario aplikasi dan jenis aplikasi yang berbeza. Berikut adalah subdivisi pelaksanaan utama:
<.> 1. Berdasarkan konfigurasi anotasi
AnnotationConfigApplicationContext -
pelaksanaan bebas konfigurasi berasaskan Java (@konfigurasi,@kacang,@komponen, dan lain -lain).
- Sangat sesuai untuk aplikasi musim bunga moden, aplikasi ini tidak menggunakan konfigurasi XML.
- biasa digunakan dalam boot musim bunga atau aplikasi bebas.
-
<.> 2. Konfigurasi berdasarkan XML
classpathxmlapplicationContext
- Muatkan definisi kacang dalam fail konfigurasi XML dari laluan kelas.
Ia biasanya digunakan untuk aplikasi musim bunga yang lebih tua.
-
- FileSystemXMLapPlicationContext
Sama seperti , tetapi fail konfigurasi XML dimuatkan dari laluan sistem fail dan bukannya laluan kelas. -
-
ClassPathXmlApplicationContext
<.> 3. Konteks berdedikasi web
xmlwebapplicationContext
Muatkan pelaksanaan khas Web yang ditakrifkan oleh XML Bean.
biasanya digunakan untuk aplikasi MVC musim bunga tradisional.
- Mengintegrasikan dengan konfigurasi web.xml atau konteks servlet.
- AnnotationConfigWebApplicationContext
-
untuk pelaksanaan berasaskan web berdasarkan konfigurasi Java. -
dalam aplikasi MVC Spring Modern atau Spring Boot Web.
membolehkan untuk mengkonfigurasi kacang yang berkaitan dengan kacang yang berkaitan dengan anotasi seperti@controller,@restontrolller. -
-
<.> 4. Konteks Permohonan Umum -
-
GenericapplicationContext
Menyediakan pelaksanaan fleksibel konteks aplikasi aplikasi umum.
boleh didaftarkan secara dinamik oleh atau kaedah.
Ia biasanya digunakan sebagai kelas asas untuk menyesuaikan pelaksanaan.
-
genericwapplicontext
-
Web -khusus varian. -
registerBean()
boleh dikonfigurasikan dengan pengaturcaraan dalam aplikasi web. registerSingleton()
-
<.> 5. Konteks Bertanggungjawab -
ReactiveBapplicationContext -
GenericApplicationContext
Direka untuk aplikasi tindak balas yang dibina oleh Spring WebFlux. -
menyokong seni bina bukan -blocking dan event -driven.
<.> 6. Khas Kegunaan di bawah
- staticapplicationContext
Pelaksanaan pengaturcaraan mudah untuk ujian atau reka bentuk prototaip cepat. -
membolehkan anda mendaftarkan kacang dengan cara pengaturcaraan tanpa XML atau anotasi. -
Ia jarang digunakan dalam aplikasi sebenar.
configurableapplicationContext
Ia tidak dilaksanakan secara bebas, tetapi antara muka lanjutan yang dapat mengkonfigurasi konteks aplikasi (contohnya, menyegarkan (), dekat ()).
direalisasikan oleh konteks lain (seperti - ).
pelaksanaan yang biasa digunakan
实现 |
使用场景 |
AnnotationConfigApplicationContext |
独立应用程序的基于Java的配置。 |
ClassPathXmlApplicationContext |
从类路径加载的XML配置。 |
AnnotationConfigWebApplicationContext |
Web应用程序的基于Java的配置。 |
XmlWebApplicationContext |
Web应用程序的XML配置。 |
GenericApplicationContext |
可编程的通用上下文。 |
Berapa banyak jenis yang ada?
Jika anda mengira pelbagai varian dan pelaksanaan yang luar biasa, Spring menyediakan tentang 8-10 berbeza pelaksanaan
. Walau bagaimanapun, dalam amalan, hanya beberapa (seperti dan ) digunakan secara meluas dalam aplikasi moden. ApplicationContext
AnnotationConfigApplicationContext
Atas ialah kandungan terperinci Spring-: Pelaksanaan-of-ApplicationContext. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn