欢迎光临本站
我们一直在努力

S2SH开发小程序图文代码分享。

1.       源码准备:

1)  struts2 源码:

a)       struts-2.1.6-.

b)      xwork-2.1.6.rar

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

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 包图解:

1472.jpg

2)  jar 包相关说明:

3.       所需注意的问题:

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

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

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

2)  OpenInViewFilter 相关问题:

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

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. 中配置:

<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 在过滤过程图解:

    如下:

1473.jpg

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,如果不增加,会发生第一次上传取不到文件的情况

以上就是S2SH开发小程序的图文代码分享的详细内容,更多请关注有卡有网。

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《S2SH开发小程序图文代码分享。》
文章链接:https://www.youkayouwang.com/kaquan-baike/xcx/152554.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。