- Spring 5 Design Patterns
- Dinesh Rajput
- 365字
- 2021-07-08 09:59:27
Creating a container with an application context
Spring provides several flavors of application context as a bean container. There are multiple core implementations of the ApplicationContext interface, as shown here:
- FileSystemXmlApplicationContext: This class is an implementation of ApplicationContext that loads application context bean definitions from the configuration files (XML) located in the file system.
- ClassPathXmlApplicationContext: This class is an implementation of ApplicationContext that loads application context bean definitions from the configuration files (XML) located in the classpath of the application.
- AnnotationConfigApplicationContext: This class is an implementation of ApplicationContext that loads application context bean definitions from the configuration classes (Java based) from the class path of the application.
Spring provides you with a web-aware implementation of the ApplicationContext interface, as shown here:
- XmlWebApplicationContext: This class is a web-aware implementation of ApplicationContext that loads application context bean definitions from the configuration files (XML) contained in a web application.
- AnnotationConfigWebApplicationContext: This class is a web-aware implementation of ApplicationContext that loads Spring web application context bean definitions from one or more Java-based configuration classes.
We can use either one of these implementations to load beans into a bean factory. It depends upon our application configuration file locations. For example, if you want to load your configuration file spring.xml from the file system in a specific location, Spring provides you with a FileSystemXmlApplicationContext, class that looks for the configuration file spring.xml in a specific location within the file system:
ApplicationContext context = new
FileSystemXmlApplicationContext("d:/spring.xml");
In the same way, you can also load your application configuration file spring.xml from the classpath of your application by using a ClassPathXmlApplicationContext class provided by Spring. It looks for the configuration file spring.xml anywhere in the classpath (including JAR files):
ApplicationContext context = new
ClassPathXmlApplicationContext("spring.xml");
If you are using a Java configuration instead of an XML configuration, you can use AnnotationConfigApplicationContext:
ApplicationContext context = new
AnnotationConfigApplicationContext(AppConfig.class);
After loading the configuration files and getting an application context, we can fetch beans from the Spring container by calling the getBean() method of the application context:
TransferService transferService =
context.getBean(TransferService.class);
In the following section, we will learn about the Spring bean life cycle, and how a Spring container reacts to the Spring bean to create and manage it.
- Rust編程:入門、實戰與進階
- CentOS 7 Server Deployment Cookbook
- 深入理解Django:框架內幕與實現原理
- Spring Boot+Spring Cloud+Vue+Element項目實戰:手把手教你開發權限管理系統
- 跟老齊學Python:輕松入門
- MATLAB應用與實驗教程
- Web程序設計(第二版)
- Hands-On Microservices with Kotlin
- 小程序開發原理與實戰
- Angular開發入門與實戰
- Python深度學習:模型、方法與實現
- C# and .NET Core Test Driven Development
- Java 9 Programming By Example
- Maven for Eclipse
- Learning Concurrency in Python