为了使struts2和spring集成,必须下载一个struts2的spring插件,实际上,struts2以上版本已经提供了这些插件,只要下载一个struts2.0以上版本就可以了。
总结一些,配置struts2+spring+ibatis项目开发环境需要的几个jar:
struts2-core-2.0.11.jar(struts2框架)
commons-lang.jar (struts2基础设施1,提供java常用操作API,比如字符串处理,XML解析等)
commons-logging.jar(struts2基础设施2,提供java日志操作API,抽象出日志接口,方便操作)
freemarker-2.3.8.jar(struts2基础设施3,freemarker模板视图支持,struts2标签主题支持)
xwork-2.0.4.jar(struts2基础设施4,命令模式框架支持
)
ognl-2.6.11.jar(struts2基础设施5,OGNL表达式支持)
struts2-spring-plugin-2.0.11.jar (struts2基础设施6,struts集成spring插件)
struts2-sitemesh-plugin-2.0.11.jar(struts2基础设施7,struts集成sitemesh插件)
spring.jar(spring框架)
ibatis-2.3.0.677.jar (ibatis框架)
sitemesh-2.3.jar(sitemesh框架)
以下文件上传需要的jar:
commons-codec.jar
commons-fileupload-1.2.jar
commons-io-1.4.jar
3.配置strut2.xml
/****** /web-inf/struts.xml ******/
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>game_proj</display-name>
<!-- 中文语言支持过滤器 -->
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.popoann.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<!-- Acegi过滤器 -->
<filter-name>acegiFilterChain</filter-name>
<filter-class>org.acegisecurity.util.FilterToBeanProxy</filter-class>
<init-param>
<param-name>targetClass</param-name>
<param-value>org.acegisecurity.util.FilterChainProxy</param-value>
</init-param>
</filter>
<!-- Acegi过滤器URL映射 -->
<filter-mapping>
<filter-name>acegiFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- ActionContextCleanUp过滤器 -->
<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>
<!-- SiteMesh的核心过滤器 -->
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>sitemesh</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Struts核心过滤器 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
<init-param>
<param-name>struts.action.extension</param-name>
<param-value>htm</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 应用程序启动时,加载SpringIoC容器 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/beans-*.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 欢迎页面 -->
<welcome-file-list>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
</web-app>
配置struts2拦截器以及spring的bean工厂
3.配置struts.xml
/****** /classes/struts.xml ******/
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD
Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd" >
<struts>
<include file="struts-default.xml"/>
<constant name="struts.i18n.encoding" value="GBK"/>
<constant name="struts.objectFactory" value="spring" />
<constant name="struts.configuration.xml.reload" value="true" />
<constant name="struts.multipart.maxSize" value="2000000" />
<package name="action.game" extends="struts-default">
<action name="index" class="_index">
<result name="success">/index.jsp</result>
</action>
</package>
</struts>
配置struts.objectFactory常数为spring,标示action类查找路径由spring工厂提供
注意<action name="index" class="_index">
这段,其中class属性指定spring工厂中的bean的ID号,name属性自然是action的url地址,关于struts2的详细配置,请参考其他文章。
2.配置bean-action.xml(spring工厂)
/****** /web-infor/bean-action.xml ******/
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
"http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
<!-- ActionBean命名规则 -->
<!-- 1.id: [<文件夹名>_]+无后缀文件名 -->
<!-- 2.class: [包名.]+首字母大写无后缀文件名+Action-->
<!-- Actionbean in "/" -->
<bean id="_index" class="action.IndexAction">
<property name="inforBo" ref="inforBo"/>
</bean>
</beans>
此处,"_index"显然是与struts.xml中action所指定的class属性是对应的。。。。
一个struts2+spring配置过程大致就是这样,struts2和spring配置详细介绍,将在以后的日志中展开。。。
分享到:
相关推荐
struts2+spring+Ibatis框架包
ssi==struts+ibatis+spring,提供oracle数据库相关表,你也可以自己根据vo下的pojo类进行表的创建,字段就是属性字段;可正常运行,提供员工,账号表的添加和列表显示功能
SSI2 Struts2+Spring2.5+IBatis2 配置 log4j.jar 版本不能低于1.2.13 此处为1.2.16,否则报FileNotFound异常
struts+spring+ibatis框架,自己配的,和大家分享下,数据库是sqlserver2008,下载导入eclipse中可以运行
SSI框架整合(Struts2.1+Spring3.0+Ibatis 2.3) 下载之后执行.sql文件创建表和sequence 记得改数据库访问地址以及数据库登录用户名密码 项目访问路径 localhost:8080/SSI_Demo1 一个简单的例子(Oracle数据库增删改查...
用ssi——struts2+spring+ibatis编写,含(登入+增删改查)等功能,适合初学者学习
此资源是一个完成的Web Project,采用ssi框架(struts+spring+ibatis),mysql数据库
Struts2+Spring+iBatis整合的一个小例子。 包括了对MySQL数据库的增删改查,只适用于新手,使用时请先把ssi.sql文件导入数据库。 压缩包内有源码和所需jar包
MyEclispse下SSI整合JAR包(Struts1+Spring3+ibatis2)
Struts2+Spring+Ibatis+Ext,ext光是实现了登陆! 业务主要是简单的实现了两张表的增删改查!还有对查询的结果了Ibatis的分页,据库是Sql Server 2000!
基于spring+struts2+ibatis开发的简单项目,里面有增加,修改,删除,查找功能,前台使用了ligerUI插件,需在jsp页面引用ligerUI的js文件,适合有一定jquery,java的初学者,并对ligerUI有一定的了解,否则将很难理解...
SSI项目实例,采用struts2.18+spring2.5+ibatis2.3实现,帮助需要帮助的朋友
Struts+Spring+Ibatis整合的Jar包
一个基于struts2.18+spring2.5+ibatis2.3的SSI项目示例。需要的jar包自己添加
struts2+spring+ibatis做的增删改查的小例子 struts2+spring+ibatis SSI2整合 struts2+spring+ibatis增删改查 对初学者很有为、用
struts2+spring2+ibatis简单登录例子
struts+spring+ibatis框架集合教程。里面有ssi的源码和三个搭建文档还有个ibatis的中文帮助文档。
Struts 1.2.9 + Spring 2.5.6 + iBATIS 2.3.4 + MySQL 3.1 + Tomcat 5.5.26 > 开发环境: * MyEclipse、JDK1.5、J2EE... * 采用 Struts 1.2.9 + Spring 2.5.6 + iBATIS 2.3.4 + MySQL 3.1 + Tomcat 5.5.26 来搭建环境
SSI即Struts+Spring+Ibatis整合开发框架
struts2+spring+ibatis 项目 入门使用 CRUD