插件

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

最新文章

  1. jQuery中多个元素的Hover事件
  2. 82 fsck-检查与修复 Linux 档案系统
  3. poj 3253 Fence Repair
  4. [MAC]OS X Mavericks 10.9.5 / 10.10.2 VMWare vmdk镜像,解压就能用!
  5. MSSQLSERVER服务无法启动的解决方案
  6. 服务器内存UDIMM与RDIMM区别
  7. PHP的Tag标签
  8. LINQ to SQL语句之Join和Order By
  9. jQuery选择器容易忽视的小知识大问题
  10. django 学习-4 模板标签
  11. Java获取文件大小的正确方法(转)
  12. LINQ to Entities does not recognize the method 'System.DateTime ToDateTime(System.String)' method
  13. Python之路【第二篇】:Python基础(二)
  14. Coursera 机器学习笔记(一)
  15. 【转】 CSS十问——好奇心+刨根问底=CSSer
  16. Java多线程:线程间通信之volatile与sychronized
  17. 使用idea搭建maven项目,结果spring-mybatis.xml文件报红“Cannot resolve file 'jdbc.properties' less... (Ctrl+F1) Inspection info:Spring XML model validation”
  18. SpringMVC的JSON数据交互(七)-@Response,@RestController,@RequestBody用法
  19. 怎么部署 .NET Core Web项目 到linux
  20. C++开发--在Visual Studio2013中使用boost::split()编译过程中出现error C4996

热门文章

  1. oracle数据导入导出数据与编码格式不正确
  2. js call回调的this指向问题
  3. 4.2 C++虚成员函数
  4. centos7配置hadoop集群
  5. <Flume><Source Code><Flume源码阅读笔记>
  6. 20165326 java第三周学习笔记
  7. 团队-团队编程项目爬取豆瓣电影top250-代码设计规范
  8. Oracle查看表或者视图的定义语句
  9. 自动化测试-22.RobotFrameWork鼠标和键盘的操作针对出现window界面的处理
  10. spring 事务控制 设置手动回滚 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();