我正在开发一个使用Spring依赖注入框架的代码库。我正在检查弹簧,但我无法找到Spring XML文件如何被执行作为代码中的第一件事。谁定义了这个入口点?就像在代码中一样,我知道main()方法是起点。
答案 0 :(得分:1)
Application Context是Spring的高级容器。
弹簧它的容器。入口点是ApplicationContext。 ApplicationContext包含BeanFactory的所有功能,通常建议使用BeanFactory。 BeanFactory仍可用于轻量级应用程序,如移动设备或基于applet的应用程序。
**最常用的ApplicationContext实现是:**
FileSystemXmlApplicationContext - 此容器从XML文件加载bean的定义。在这里,您需要向构造函数提供XML bean配置文件的完整路径。
ClassPathXmlApplicationContext - 此容器从XML文件加载bean的定义。在这里,您不需要提供XML文件的完整路径,但是您需要正确设置CLASSPATH,因为此容器看起来像CLASSPATH中的bean配置XML文件。
您可以使用xml config运行容器:
public static void main(String[] args) {
ApplicationContext context = new FileSystemXmlApplicationContext
("FILE PATH TO application-context.xml");
--application-context.xml - is your cofing file
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
obj.getMessage();
}
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext
("classthat:/application-context.xml");
--application-context.xml - is your cofing file
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
obj.getMessage();
}
默认情况下,ApplicationContext实现急切地创建并将所有单例bean配置为初始化过程的一部分。急切地意味着所有未标记为延迟的bean将被创建为弹簧容器启动。