由于自己学习的版本比较落后,这里就不总结了

  在我这个版本整合的过程中的几点问题:

  1.在web.xml的配置过程中:
    

<!-- 如果使用的是load获取数据,在jsp页面申请取得数据时才真正的执行sql,而此时session已经关闭 -->
<!-- 需要加上 OpenSessionInViewFilter 这个拦截器,用于延长session在jsp调用完后再关闭,另外需要写在 struts 拦截器之前 -->
<!-- 原因:Filter顺序—先进后出,写在 struts之前,先经过openSessionInViewFilter,由其管理session,struts拦截完后,openSessionInViewFilter再决定 关闭session的时间-->
<!-- 另外:这个过滤器会对事务产生影响,如果方法没有加上事务边界,那么 openSessionInViewFilter 自动将该方法变为 只读 方法,所以需要在配置 文件中 指定 事务边界-->
<filter>
<filter-name>openSessionInViewFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>openSessionInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

  

  2.注:struts2 和 Spring 整合之后,Action 的 生成方式有两种

第一种:<action name="user" class="com.bjsxt.registration.action.UserAction">

这种方式 由 struts 创建Action,struts创建的Action有几个特点:

1.不需要写   @Resource   Action一产生的时候呢,会到Spring容器里面去找它要注入的内容   (service,dao等)(只要有 get set 方法,默认就会按照 byName的方式 自动装配到Action中)

2.不需要写  @Component,因为,Action 是 struts管理的,写了只会在Spring容器中多出来个bean而已

3.不需要写 @Scope(“prototype”),默认设置就是每次访问都创建Action

第二种:<action name="user" class="u>  使用action标签中 class属性配合  @Component(“u”)

这种方式可以由 spring 创建Action,spring创建的Action特点:

0.在Action中需使用  @Component(“u”),来生成 Action 这个bean,

1.可以 指定 注入 bean的 具体名字 ,即可以使用 @Resource(name=””);

2.需要 使用@Scope(“prototype”)不要忘记,因为默认的应该是 ‘单例的’

    

注:struts2 和 Spring 整合之后,Action 的 生成方式有两种

第一种:<action name="user" class="com.bjsxt.registration.action.UserAction">

这种方式 由 struts 创建Action,struts创建的Action有几个特点:

1.不需要写   @Resource   Action一产生的时候呢,会到Spring容器里面去找它要注入的内容   (service,dao等)(只要有 get set 方法,默认就会按照 byName的方式 自动装配到Action中)

2.不需要写  @Component,因为,Action 是 struts管理的,写了只会在Spring容器中多出来个bean而已

3.不需要写 @Scope(“prototype”),默认设置就是每次访问都创建Action

第二种:<action name="user" class="u>  使用action标签中 class属性配合  @Component(“u”)

这种方式可以由 spring 创建Action,spring创建的Action特点:

0.在Action中需使用  @Component(“u”),来生成 Action 这个bean,

1.可以 指定 注入 bean的 具体名字 ,即可以使用 @Resource(name=””);

2.需要 使用@Scope(“prototype”)不要忘记,因为默认的应该是 ‘单例的’

最新文章

  1. arrayLiist的四种遍历方法
  2. zoj 3725 - Painting Storages(动归)
  3. ubuntu 开发环境搭建 lisp gcc python perl mysql
  4. Android源码分析--CircleImageView 源码详解
  5. ubuntu及终端快捷键
  6. 获取被选择的radio的值
  7. Linux下搭建 Cocos2d-x-2.1.4 编译环境
  8. HBuilder HTML 自定义代码块
  9. PLSQL创建定时任务
  10. 教你自己搭建linux邮箱服务器
  11. kafka在windows上的安装、运行
  12. SSD卡对mongodb的影响
  13. IntelliJ IDEA 中文乱码配置
  14. pthread_cond_wait和pthread_cond_signal以及互斥变量的使用情况
  15. Task 回调
  16. hadoop 常用hdfs命令
  17. C语言数组篇(三)字符空间 和 非字符空间
  18. 转载:PHP 协程实现
  19. 文件排版(codevs 1300)
  20. python 常用的模块(collections)转

热门文章

  1. 自定义Camera的setPictureSize拍照完毕出现花屏怎么解决
  2. [idea][转]理解 IntelliJ IDEA 的项目配置和Web部署
  3. CodeIgniter问题:Unable to load the requested file: .php
  4. spring常用模式--模板模式
  5. [ML] Linear Discriminant Analysis
  6. RAID概念记录
  7. sequelize 字段无法操作
  8. Flutter之切换导航TabBar组件
  9. laravel5.5的定时任务详解(demo)
  10. ORA-00054:Orcacle表锁定