springmvc初始化过程

文章详细阐述了SpringMVC在Tomcat启动时的初始化步骤,从DispatcherServlet的init方法开始,讲解了如何通过contextConfigLocation配置初始化SpringMVC的IOC容器,以及创建webApplicationContext的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
在这里插入图片描述

写在前面

本文一起看下springMVC的初始化过程。当我们按照如下的步骤配置好springmvc的环境后,就可以启动tomcat来访问项目了:
在这里插入图片描述
在启动tomcat的过程中会对springmvc的环境进行初始化,入口自然是DispatcherServlet的init方法。在servlet规范中,加载servlet后,会调用其init方法,当加载DispatcherServlet时,最终会调用到springmvc的servletorg.springframework.web.servlet.HttpServletBean的init方法,如下:

org.springframework.web.servlet.HttpServletBean#init
public final void init() throws ServletException {
		// 在web.xml中配置的contextConfigLocation就在这里,用户初始化springMVC的IOC容器
		PropertyValues pvs = new ServletConfigPropertyValues(getServletConfig(), this.requiredProperties);
		if (!pvs.isEmpty()) {
			// ...
		}

		// 2023-04-02 12:32:49
		initServletBean();
	}

2023-04-02 12:32:49处参考1:创建springMVC IOC容器

1:创建springMVC IOC容器

在该方法中会解析通过contextConfigLocation配置的springMVC配置文件,解析其中的bean并创建springMVC对应的IOC 容器web ApplicationContext,如下:

org.springframework.web.servlet.FrameworkServlet#initServletBean
@Override
	protected final void initServletBean() throws ServletException {
		...
		try {
		    // 2023-04-02 12:57:59
			this.webApplicationContext = initWebApplicationContext();
			// 空实现,忽略
			initFrameworkServlet();
		}
		...
	}

2023-04-02 12:57:59处加载结果相关的bean如下图:
在这里插入图片描述

写在后面

参考文章列表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值