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

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

  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”)不要忘记,因为默认的应该是 ‘单例的’

11.SSH整合的更多相关文章

  1. Spring(八)SSH整合简述

    一.Spring与Struts2的整合 1.1.整合步骤 1.2.配置web.xml 1.3.配置spring配置文件applicationContext.xml 1.4.配置struts配置文件 1 ...

  2. SSH整合之spring整合hibernate

    SSH整合要导入的jar包: MySQL中创建数据库 create database ssh_db; ssh_db 一.spring整合hibernate带有配置文件hibernate.cfg.xml ...

  3. 从MVC和三层架构说到SSH整合开发

    相信很多人都认同JavaWeb开发是遵从MVC开发模式的,遵从三层架构进行开发的,是的,大家都这么认同.但是相信大家都会有过这样一个疑问,if(MVC三层模式==三层架构思想)out.println( ...

  4. ssh整合oracle数据源报错????

    在SSH整合的时候,引入oracle的pom节点,但是报错,因为没有权限,要手动将Oracle.jar注册到本地仓库 保证你电脑有maven环境,测试 方式为 cmd---->mvn -vers ...

  5. SSH整合简单例子

    说明:简单SSH整合,struts版本2.3.32,spring版本3.2.9,hibernate版本3.6.10 一.开发步骤 1 引jar包,创建用户library.使用的包和之前博文相同,可以参 ...

  6. SSH整合框架+mysql简单的实现

    SSH整合框架+mysql简单的实现 1. 框架整合原理: struts2整合Spring 两种: 一种struts2自己创建Action,自动装配Service : 一种 将Action交给Spri ...

  7. 三大框架SSH整合

    三大框架SSH整合 -------------------------------Spring整合Hibernate------------------------------- 一.为什么要整合Hi ...

  8. 【Java EE 学习 67 下】【OA项目练习】【SSH整合JBPM工作流】【JBPM项目实战】

    一.SSH整合JBPM JBPM基础见http://www.cnblogs.com/kuangdaoyizhimei/p/4981551.html 现在将要实现SSH和JBPM的整合. 1.添加jar ...

  9. SSH整合(struts2.3.24+hibernate3.6.10+spring4.3.2+mysql5.5+myeclipse8.5+tomcat6+jdk1.6)

    终于开始了ssh的整合,虽然现在比较推崇的是,ssm(springmvc+spring+mybatis)这种框架搭配确实比ssh有吸引力,因为一方面springmvc本身就是遵循spring标准,所以 ...

随机推荐

  1. Shell脚本执行的四种方法

    (1).bash(或sh) [脚本的相对路径或绝对路径] [xf@xuexi ~]$ cat a.sh #!/bin/bash echo "hello world!" [xf@xu ...

  2. Java NIO学习笔记四 NIO选择器

    Java NIO选择器 A Selector是一个Java NIO组件,可以检查一个或多个NIO通道,并确定哪些通道已准备就绪,例如读取或写入.这样一个线程可以管理多个通道,从而管理多个网络连接. 为 ...

  3. Spring Aop(十)——编程式的Pointcut

    转发地址:https://www.iteye.com/blog/elim-2396526 编程式的Pointcut 除了可以通过注解和Xml配置定义Pointcut之外,其实我们还可以通过程序来定义P ...

  4. sqlmap工具介绍

    工具介绍 sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MySQL, Oracle, PostgreSQL, Microsoft ...

  5. 为 Exchange 2010 用户添加联系人头像

    一.修改AD架构 为了给联系人添加头像,实际是让联系人头像缩略图能够显示在全局地址列表 GAL 中,需要让其在全局编录(GC)中进行复制,默认情况下,对象的“thumbnailphoto”属性值不会在 ...

  6. CF1183E/H Subsequences

    思路: dp好题,dp[i][j]表示到前i个字符为止并且以s[i]为结尾,共有多少个长度为j的不同的子序列. 实现: #include <bits/stdc++.h> using nam ...

  7. IJG JPEG使用说明

    IJG JPEG库使用说明 版权所有:1994-1998,Thomas G. Lane 本文档是IJG软件的一部分. 分发和使用的条件请参看README文档. 本文档讲述如何在应用程序中使用IJG(I ...

  8. springboot datajpa 简明说明

    findById返回Optional的使用 查询 public Object lookupDevice(Integer id) { return deviceJpa.findById(id).orEl ...

  9. The timeout period elapsed prior to completion of the operation or the server is not responding.

    问题:更新数据的状态值时,部分报出如下异常: 即时有成功更新,时有报错问题出现. 在LOG中发现成功更新的数据,存在更新时间过长问题,将近30秒(EF默认的CommandTimeout为30秒): 代 ...

  10. linux 下tomcat出现 Native memory allocation (malloc) failed to allocate 1915224064 bytes for committing reserved memory问题

    ## There is insufficient memory for the Java Runtime Environment to continue.# Native memory allocat ...