来源:http://www.iteye.com/topic/56019
春节大假结束了,又该开始学习了。春节期间发生了一些高兴的事,其中之一便是apache终于发布了struts2的正式版:struts2.0.6GA,所以我也该从webwork迁移至struts2。
struts2基本上就是webwork的翻版,所以迁移过程倒是很简单,只需要修改下配置文件和一些包名就可以了。如果在Eclipse、Netbeans这些集成开发工具的帮助下,记不清包名也很容易找到想要的类的,呵呵。
在Eclipse下建立一个Dynamic Web Application。
从struts2.0.6的lib目录中复制下面的库文件到WEB-INF/lib目录下:
commons-logging-1.1.jar
freemarker-2.3.8.jar
ognl-2.6.9.jar
struts-api-2.0.6.jar
struts-core-2.0.6.jar
struts-spring-plugin-2.0.6.jar
xwork-2.0.0.jar
从spring中lib目录中复制下面的库文件到WEB-INF/lib目录下:
spring.jar
修改web.xml,增加一个struts的分派器filter,映射所有的url-pattern,再增加一个spring的ContextLoaderListener监听器。修改后的内容如下:
<!--l version="1.0" encoding="UTF-8-->
xml 代码
-
<?xmlversion="1.0"encoding="UTF-8"?>
-
<web-appid="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/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
-
<display-name>struts2tutorial</display-name>
-
-
<filter>
-
<filter-name>struts2</filter-name>
-
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
-
</filter>
-
-
<filter-mapping>
-
<filter-name>struts2</filter-name>
-
<url-pattern>*.action</url-pattern>
-
</filter-mapping>
-
-
<welcome-file-list>
-
<welcome-file>index.jsp</welcome-file>
-
</welcome-file-list>
-
-
<listener>
-
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
-
</listener>
-
-
</web-app>
写一个简单的Action,HelloWorld:
java 代码
-
packagetutorial;
-
importcom.opensymphony.xwork2.ActionSupport;
-
publicclassHelloWorldextendsActionSupport{
-
-
publicstaticfinalStringMESSAGE="Strutsisupandrunning...";
-
-
publicStringexecute()throwsException{
-
setMessage(MESSAGE);
-
returnSUCCESS;
-
}
-
-
privateStringmessage;
-
-
publicvoidsetMessage(Stringmessage){
-
this.message=message;
-
}
-
-
publicStringgetMessage(){
-
returnmessage;
-
}
-
}
在源文件路径下(项目的src目录)增加struts.xml配置action。这个文件是集成spring的关键所在,这里面描述有如何将spring2集成到struts2的相关信息:
<!--CTYPE struts PUBLIC<br-->
xml 代码
-
<!DOCTYPEstrutsPUBLIC
-
"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN"
-
"http://struts.apache.org/dtds/struts-2.0.dtd">
-
<struts>
-
<!-- 下面这句表明对象是由spring负责产生的.加上这句后,struts会产生让spring负责</span></li> <li class=""><span class="tag"> 产生bean,如果spring不能产生bean,则由struts自己产生.也可以在struts.properties</span></li> <li class=""><span class="tag"> 文件内定义这个属性.-->
-
<constantname="objectFactory"value="spring"></constant>
-
<packagename="struts2tutoial"extends="struts-default"namespace="/">
-
<!-- 注意,现在action的class属性不再是类的名字了,而是在spring中的bean的id</span></li> <li class="alt"><span> 详细信息请看下面的spring的bean配置文件applicationContext.xml-->
-
<actionname="HelloWorld"class="helloWorld">
-
<result>/helloWorld.jsp</result>
-
</action>
-
-
</package>
-
</struts>
在WEB-INF/目录下增加spring的bean配置文件applicationContext.xml:
<!--l version="1.0" encoding="UTF-8-->
xml 代码
-
<?xmlversion="1.0"encoding="UTF-8"?>
-
<!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN2.0//EN""http://www.springframework.org/dtd/spring-beans-2.0.dtd">
-
<beans>
-
-
<beanid="helloWorld"class="tutorial.HelloWorld"></bean>
-
-
</beans>
配置很简单,只有一个bean。
最后,在WebContent目录下增加helloWorld.jsp:
<!--taglib prefix="s" uri="/struts-tags"-->
xml 代码
-
<%@taglibprefix="s"uri="/struts-tags"%>
-
-
<html>
-
<head>
-
<title>HelloWorld!</title>
-
</head>
-
<body>
-
<h2><s:propertyvalue="message"/></h2>
-
</body>
-
</html>
分享到:
相关推荐
本笔记将主要聚焦于如何将Spring与Struts2进行整合,以实现更加灵活和可维护的系统架构。 首先,Spring的核心在于其Inversion of Control(IoC)容器,也称为依赖注入容器。它负责创建对象并管理它们之间的关系,...
- 了解 Struts2 如何与 Spring、Hibernate 等其他框架集成。 - 学习如何使用 Struts2 提供的各种标签和插件来简化开发工作。 综上所述,Struts2 是一个功能强大且灵活的 MVC 框架,适用于构建复杂的 Web 应用程序...
例如,通过Struts2-Spring-plugin,可以实现Action的依赖注入,增强应用的可测试性和可维护性。 总的来说,张龙圣思园的Struts2学习笔记是全面了解和掌握Struts2框架的宝贵资源,无论你是初学者还是有经验的开发者...
SSH整合是Java Web开发中的一种常见模式,它指的是Spring、Struts2和Hibernate这三大开源框架的集成。这种集成能够构建出高效、可维护的Web应用程序。以下是对SSH整合的详细解析: 一、Spring框架 Spring是Java企业...
标题 "记录-笔记-用ANT构建-struts-spring-hibernate" 暗示了这篇笔记主要涉及使用Apache Ant工具来构建一个整合了Struts、Spring和Hibernate的Java Web项目。Struts是MVC(模型-视图-控制器)框架,Spring是全面的...
4. **Spring MVC**: 与Struts2类似的MVC框架,但更轻量级,易于测试和集成。 5. **数据访问集成**: 支持JDBC、JPA、Hibernate等多种数据访问技术。 6. **Spring Boot**: 现代化Spring应用的启动器,简化配置和启动...
10. **主题与皮肤**:Struts2允许定制视图展示的外观和感觉,通过主题和皮肤的设置,可以改变JSP页面的样式。 11. **ActionChain**:ActionChain允许将多个Action串联起来执行,这样可以在一个请求中处理多个业务...
首先,为了实现整合,我们需要引入`struts2-spring-plugin-2.0.6.jar`这个包,这是Struts2提供的一个插件,专门用于与Spring的集成。这个插件提供了将Spring的IoC容器与Struts2框架无缝结合的能力。 在`web.xml`...
### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...
根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...
### SSH(Struts1.0+Spring+Hibernate)框架集成笔记 #### 一、概述 SSH框架集成,即Struts1.0 + Spring + Hibernate框架的整合应用,是Java Web开发中较为复杂的集成模式之一。它集合了MVC设计模式(通过Struts...
Struts2-Spring-Hibernate(SSH)是一种经典的Java Web开发框架组合,用于构建高效、可扩展的企业级应用程序。这三个框架分别负责不同的职责:Struts2处理MVC(模型-视图-控制器)架构中的动作控制,Spring提供依赖...
本课程笔记主要涵盖了Struts2的基础概念、核心功能及其工作流程。 首先,Struts2的处理流程是通过一系列的组件协作完成的,包括Filter Dispatcher(过滤器调度器)、Action、Interceptor(拦截器)和Result。当用户...
Struts2、Spring和iBatis是Java Web开发中常用的三个开源框架,它们各自负责不同的职责,协同工作可以构建出高效、松耦合的Web应用。这个整合项目实例旨在展示如何将这三个框架集成到一起,以实现更强大的功能。 1....
本笔记主要涵盖了Struts2的基础知识,包括但不限于配置、Action、拦截器、结果类型以及异常处理等内容。 1. **Struts2框架简介** Struts2是Apache软件基金会的一个开源项目,它是Struts1的升级版,弥补了Struts1在...
2. **Spring与Struts的拦截器集成**:Spring AOP的拦截器可以与Struts的拦截器结合,提供更灵活的请求处理和业务逻辑控制。 3. **事务管理**:Spring 提供的声明式事务管理可以无缝集成到Struts应用中,简化了事务...
在`struts2-spring-plugin-2.0.11.2.jar`中,包含了Struts2与Spring集成所需的类和配置,帮助管理Struts2的Action实例。 其次,Spring框架是Java开发的核心工具,它不仅提供了DI和AOP,还支持事务管理、数据访问...
Struts2、Hibernate和Spring是Java开发中三大主流框架,它们各自解决了Web开发中的不同问题,结合使用可以构建出高效、可维护的大型企业级应用。以下是对这三大框架及其结合使用的知识点详解。 **Struts2框架** ...
这份"spring-note spring 读书笔记"深入探讨了Spring的核心概念以及如何与其他流行技术如JDBC、Hibernate、Struts和事务管理进行集成。 1. **Spring依赖注入(IOC)**: Spring的IOC容器是其核心,负责创建对象并...