SSM项目加载流程

SSM项目服务启动:

项目进入web.xml

ssm框架 中web.xml执行顺序

1.<!--spring 的监听器-->

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

2<!-- spring 主配置文件的 路径 和名字 -->

<context-param>

<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>

</context-param>

. 在启动 Web  容器时,自动装配 Spring  applicationContext.xml  的配置信息。(先执行spring的监听器,

因为它实现了ServletContextListener 这个接口,在web.xml 配置这个监听器,启动容器时,就会默认执行它实现的方法。在ContextLoaderListener 中关联了ContextLoader 这个类,所以整个加载配置过程由ContextLoader 来完成

spring 在 web 下的入口在配置文件 web.xml 的监听器中


3
<!-- 过滤器 编码格式 -->
<filter>
<filter-name>Encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


4<!-- springMVC的核心控制 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 自定义springMVC。xml 的路径 和 名字 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-mvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>


运行流程:

1.jsp(view)发送请求

2.通过核心控制器DispatcherServlet调用请求解析器:HandlendMapping对请求进行解析,通过映射关系匹配到Controller层

3.在控制层调用业务逻辑层(service),数据持久层(DAO)返回控制层,请求完成获取一个结果,设置一个要跳转的视图,(ModelAndView装载并传输数据,设置视图)

4.核心控制器调用 视图解析器:ViewResolver解析视图,匹配相应的页面实现页面跳转

猜你喜欢

转载自blog.csdn.net/dingfei136913/article/details/78668855