黑马-ssh

 

插件

Struts-plugin.xml

说明:

Struts-plugin.xml文件是在tomcat服务器启动的时候加载的

该配置文件在classpath的根目录下

在每一个含有plugin字母的jar包的根目录下有一个struts-plugin.xml文件

当tomcat启动的时候,就把所有的含有plungin的jar包的该配置文件就加载了。

struts2启动时候的时序图

struts2启动的时候  执行web.xml中的 核心过滤器filter类 ,filter类执行init初始化方法,init方法调用  InitOperations类的initDispatcher方法返回类型 是dispatcher,

initDispatcher进去后方法调用Dispatcher类的init方法

init方法进去后调用init——DefaultProperties方法

, 新建了一个DefaultPropertiesProvider();rigister方法加载了配置文件org、

 Dispatcher类执行init_DefaultProperlies()方法后,执行,init_Traditional方法

init_Tradi中的   配置文件路径

struts2核心流程

url访问   核心过滤器的doFilter方法

编码  prepare  setEncoding

  

核心 serviceAction  执行2个核心方法  1init   2execute

 

最后部  清空

总结

 tomcat启动的时候ssh做的事情

启动调用监听器 web.xml

初始方法  

 

web.xml中filter   

总结

整合原理-启动

 

ssh整合的目的

问题

1、  struts2的action为什么必须交给spring容器产生?

Action与service要做到完全的松耦合,所以在action中的service必须由spring容器进行注入,那么要完成该注入,action必须在spring容器中。所以action必须由spring容器产生。

2、  在整合的整个过程中,spring容器用到了哪些知识点?

1、  为了松耦合action与service,service与dao,使用了ioc和di

2、  为了不让程序员接触到事务,使用了声明式的事务处理

3、  有可能会用springaop处理权限、日志等内容

3、  在整合的过程中,struts2用到了哪些知识点?

1、  mvc的作用

2、  使用插件的机制使得struts2与spring整合在一起了,实际上就是把

Struts2中的action交给spring处理了。

4、  在整合的过程中,hibernate充当了什么角色?

数据库的操作由hibernate充当

opensessioninview

原文地址:https://www.cnblogs.com/hellowq/p/10008830.html