`
wfzhanga
  • 浏览: 70210 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

S2SH开发小程序

阅读更多

1.       源码准备:

1)  struts2 源码:

a)       struts-2.1.6-all.zip

b)      xwork-2.1.6.rar

c)      jp.gr.java_conf.ussiy.app.propedit_5.3.3.zip,eclipse 管理资源文件

2)  spring2.5 源码:

a) spring-framework-2.5.6.zip

3)  hibernate3.2 源码:

a)       hibernate-distribution-3.3.2.GA-dist.zip

b)      hibernate-annotations-3.4.0.GA.zip

c)      slf4j-1.5.8.zip

2.       SSH 所需要的 jar 包:

1)  jar 包图解:

2)  jar 包相关说明:

3.       所需注意的问题:

1)  @Scope(value=”propotype”) 问题

a)       每定义的 action 类,需要定义其类型为: propotype ,在类上面加上: @Scope(value=”propotype”)

b)      如果不设置, spring 初始化的每个类,默认 Scope 值为 singleton 方式。然而 webWork Action 不是线程安全的,要求在多线程环境下必须是一个线程对应一个独立的实例,不能使用 singleton 。所以,我们在 Spring 配置 webWork Action Bean 时,需要加上属性 scope=”prototype” singleton=”false”

2)  OpenSessionInViewFilter 相关问题:

a)       由于 Hibernate 引入了 Lazy Load 特性 () ,使得脱离 Hibernate Session 周期的对象如果再想通过 getter/load 方法取到其关联对象的值, Hibernate 会抛出一个 LazyLoad Exception

b)      解决这个问题, Spring 引入了这个 Filter ,使得 Hibernate Session 的生命周期变长。

c)      具体配置:

 

<filter> 
    <filter-name>openSessionInView</filter-name> 
    <filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
    </filter-class>  
    <init-param> 
         <param-name>sessionFactoryBeanName</param-name> 
         <param-value>sf</param-value> 
    </init-param>
</filter> 
<filter-mapping> 
    <filter-name>openSessionInView</filter-name>      
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
 

 

3)  中文乱码问题:

a)       中文乱码问题,在 struts.xml 中配置:

<constant name="struts.i18n.encoding"  value="GB18030"  />

  仍然无法解决。

b)      此为 strtust2.1.6 的一个 bug 问题,解决方法是使用 spring 提供 encodingFilter实现。

c)      encodingFilter 具体配置:

       

<filter>
	<filter-name>encodingFilter</filter-name>
	<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
	<init-param>
		<param-name>encoding</param-name>
		<param-value>GBK</param-value>
	</init-param>
</filter>
	
<filter-mapping>
	<filter-name>encodingFilter</filter-name>
	<url-pattern>/*</url-pattern>
</filter-mapping> 

4) filter web.xml 中的顺序问题:

a)   web.xml 配置中功能越大的filter 应该越配在前面。

b)   多个filter 在过滤过程图解:

    如下:

5)上传文件时清除缓存filter:

<filter>
     <filter-name>struts-cleanup</filter-name>
     <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
</filter>
<filter-mapping>
    <filter-name>struts-cleanup</filter-name>
     <url-pattern>/*</url-pattern>
</filter-mapping>
 
在做上传文件的时候,要在web.xml中增加ActionContextCleanUp这个filter,如果不增加,会发生第一次上传取不到文件的情况
 

 

 

 

 

分享到:
评论
2 楼 wfzhanga 2010-09-03  
qq123zhz 写道
怎么都没写东西?

要写什么呢?里面就是最基本的SSH配置,不需要其他的了...
1 楼 qq123zhz 2010-09-03  
怎么都没写东西?

相关推荐

    s2sh基础框架

    S2SH框架是Java Web开发中的一个经典组合,由Struts2、Spring和Hibernate三个开源框架组成。这个基础框架旨在为初级Java开发人员提供一个快速开发的平台,同时适用于小型到中型项目的应用。下面我们将深入探讨这三个...

    S2SH的基础框架

    S2SH框架适用于中小型Web应用程序,尤其是那些需要快速开发和迭代的项目。由于其组件化的设计,可以灵活地调整和扩展,适应不同项目的需求。对于初学者,通过S2SH框架的学习,可以快速掌握Java Web开发的基本流程和...

    S2SH整合+测试小例程

    Struts2、Spring和Hibernate(简称S2SH)是Java Web开发中的一种经典组合,用于构建企业级应用。这三个框架的整合提供了模型-视图-控制器(MVC)架构的全面支持,使得开发者能够更高效地管理和组织项目代码。下面...

    S2SH需要的所有jar包

    "S2SH需要的所有jar包"这个压缩包文件包含了这三个框架以及Java Web开发所需的其他相关库。下面将详细阐述SSH框架的主要组件及其相关的jar包,以及它们在开发中的作用。 1. Struts2:Struts2是一个基于MVC(Model-...

    S2SH简单集成小项目

    **S2SH简单集成小项目** 本项目是一个基于Struts2、Spring和Hibernate(简称S2SH)的轻量级Java Web应用框架的实例。S2SH是企业级Web开发中常用的三大开源框架的组合,它们分别是:Struts2负责控制层,Spring处理...

    一个图书馆登录,注册,增删改查 包含分页的S2SH框架 小程序

    标题中的“一个图书馆登录,注册,增删改查 包含分页的S2SH框架 小程序”指的是一个基于S2SH(Struts2、Spring、Hibernate)框架开发的图书管理小程序,它具备用户登录、注册功能,并能对图书进行增加、删除、修改和...

    s2sh整合程序

    Struts2、Hibernate和Spring(简称S2SH)是Java Web开发中的一种经典组合,用于构建基于MVC(Model-View-Controller)架构的应用程序。这个整合程序涉及到这三大框架的协同工作,以实现数据持久化、业务逻辑处理以及...

    S2SH分页实现

    在Java Web开发中,S2SH(Struts2、Hibernate和Spring)是一个常见的技术栈,用于构建企业级的Web应用程序。本示例着重讲解如何在S2SH框架下实现分页功能,这对于处理大量数据的展示和管理至关重要,能够提高用户...

    S2SH-CRUD.rar_s2sh

    总的来说,S2SH-CRUD项目为初学者提供了一个直观的学习平台,通过实际操作,可以深入理解S2SH框架的架构和工作原理,进一步提升Java Web开发技能。在实践中不断探索和学习,你会发现S2SH框架的强大和灵活性,为未来...

    Java EE轻量级框架应用与开发--S2SH-示例代码和部分贯穿项目代码.zip

    【标题】"Java EE轻量级框架应用与开发--S2SH-示例代码和部分贯穿项目代码.zip" 涉及的是Java企业版(Java EE)中的轻量级框架应用,尤其是Spring、Struts和Hibernate(S2SH)的经典组合。这个压缩包可能包含了这些...

    s2sh-CRUD.rar_crud_s2sh

    S2SH,全称为Struts2+Spring+Hibernate,是Java Web开发中的一个经典整合框架,用于构建高效、可维护的Web应用程序。这个框架结合了Struts2(MVC框架)、Spring(依赖注入和事务管理)和Hibernate(对象关系映射)的...

    s2sh分页,s2sh分页

    在IT行业中,尤其是在Web开发领域,`s2sh`通常指的是Struts2、Spring和Hibernate三个框架的集成,它们一起构建了一个强大的Java EE应用程序开发框架。分页是Web应用中常见的功能,特别是在处理大量数据时,它能提高...

    S2SH小项目

    通过【S2SH小项目】的学习,初学者能够全面理解Java Web开发中的核心技术和框架集成,为后续的进阶学习打下坚实基础。同时,这个项目也强调了实际操作和问题解决,有助于提升开发者的实战能力。

    s2sh整合小案例

    在IT行业中,S2SH(Struts2、Spring和Hibernate)是一个常见的企业级Web应用程序开发框架组合。这个小案例展示了如何将这三个强大的组件整合到一起,以构建一个功能完备的后端系统。以下是对这个整合过程的详细说明...

    s2sh的单表增删改查小系统有数据库

    【标题】"s2sh的单表增删改查小系统有数据库" 是一个基于Struts2、Spring和Hibernate(简称S2SH)三大主流Java Web框架构建的简单数据库操作应用。这个系统主要实现了对单一数据库表的基础操作,包括添加(Add)、...

    S2SH小例子(整合)

    【S2SH小例子(整合)】是一个典型的Java Web开发示例,它涵盖了三大主流开源框架:Struts2、Spring和Hibernate的集成应用。这个整合示例对于学习和理解这三大框架如何协同工作,以及在实际项目中的应用具有重要的参考...

    (仿铁路网上售票系统+google数字分页)S2SH 的小项目

    【标题】:“(仿铁路网上售票系统+google数字分页)S2SH 的小项目”指的是一款基于S2SH框架开发的模拟铁路网上售票系统的应用程序。S2SH是Struts2、Spring和Hibernate三个开源Java框架的组合,常用于构建企业级Web...

    初学EXTJS 加S2SH做的小练习

    在这个“初学EXTJS 加S2SH做的小练习”项目中,开发者尝试将EXTJS的前端能力与S2SH的后端功能相结合,创建了一个简单的Web应用程序。 EXTJS 提供了一套丰富的组件库,包括表格、表单、树形视图、图表等,使得开发者...

Global site tag (gtag.js) - Google Analytics