`
java378656992
  • 浏览: 41278 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

struts2系列之2----主题: struts2笔记:与spring2集成

阅读更多

来源:http://www.iteye.com/topic/56019

主题: struts2笔记:与spring2集成

春节大假结束了,又该开始学习了。春节期间发生了一些高兴的事,其中之一便是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 代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <web-appid="WebApp_ID"version="2.4"
  3. xmlns="http://java.sun.com/xml/ns/j2ee"
  4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  5. xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  6. <display-name>struts2tutorial</display-name>
  7. <filter>
  8. <filter-name>struts2</filter-name>
  9. <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
  10. </filter>
  11. <filter-mapping>
  12. <filter-name>struts2</filter-name>
  13. <url-pattern>*.action</url-pattern>
  14. </filter-mapping>
  15. <welcome-file-list>
  16. <welcome-file>index.jsp</welcome-file>
  17. </welcome-file-list>
  18. <listener>
  19. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  20. </listener>
  21. </web-app>



写一个简单的Action,HelloWorld:

java 代码
  1. packagetutorial;
  2. importcom.opensymphony.xwork2.ActionSupport;
  3. publicclassHelloWorldextendsActionSupport{
  4. publicstaticfinalStringMESSAGE="Strutsisupandrunning...";
  5. publicStringexecute()throwsException{
  6. setMessage(MESSAGE);
  7. returnSUCCESS;
  8. }
  9. privateStringmessage;
  10. publicvoidsetMessage(Stringmessage){
  11. this.message=message;
  12. }
  13. publicStringgetMessage(){
  14. returnmessage;
  15. }
  16. }



在源文件路径下(项目的src目录)增加struts.xml配置action。这个文件是集成spring的关键所在,这里面描述有如何将spring2集成到struts2的相关信息:
<!--CTYPE struts PUBLIC<br-->

xml 代码
  1. <!DOCTYPEstrutsPUBLIC
  2. "-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN"
  3. "http://struts.apache.org/dtds/struts-2.0.dtd">
  4. <struts>
  5. <!-- 下面这句表明对象是由spring负责产生的.加上这句后,struts会产生让spring负责</span></li> <li class=""><span class="tag"> 产生bean,如果spring不能产生bean,则由struts自己产生.也可以在struts.properties</span></li> <li class=""><span class="tag"> 文件内定义这个属性.-->
  6. <constantname="objectFactory"value="spring"></constant>
  7. <packagename="struts2tutoial"extends="struts-default"namespace="/">
  8. <!-- 注意,现在action的class属性不再是类的名字了,而是在spring中的bean的id</span></li> <li class="alt"><span> 详细信息请看下面的spring的bean配置文件applicationContext.xml-->
  9. <actionname="HelloWorld"class="helloWorld">
  10. <result>/helloWorld.jsp</result>
  11. </action>
  12. <!--Addyouractionshere-->
  13. </package>
  14. </struts>



在WEB-INF/目录下增加spring的bean配置文件applicationContext.xml:
<!--l version="1.0" encoding="UTF-8-->

xml 代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN2.0//EN""http://www.springframework.org/dtd/spring-beans-2.0.dtd">
  3. <beans>
  4. <beanid="helloWorld"class="tutorial.HelloWorld"></bean>
  5. </beans>


配置很简单,只有一个bean。

最后,在WebContent目录下增加helloWorld.jsp:
<!--taglib prefix="s" uri="/struts-tags"-->

xml 代码
  1. <%@taglibprefix="s"uri="/struts-tags"%>
  2. <html>
  3. <head>
  4. <title>HelloWorld!</title>
  5. </head>
  6. <body>
  7. <h2><s:propertyvalue="message"/></h2>
  8. </body>
  9. </html>
分享到:
评论

相关推荐

    SSH笔记-Spring整合Struts2

    本笔记将主要聚焦于如何将Spring与Struts2进行整合,以实现更加灵活和可维护的系统架构。 首先,Spring的核心在于其Inversion of Control(IoC)容器,也称为依赖注入容器。它负责创建对象并管理它们之间的关系,...

    struts2综合笔记

    - 了解 Struts2 如何与 Spring、Hibernate 等其他框架集成。 - 学习如何使用 Struts2 提供的各种标签和插件来简化开发工作。 综上所述,Struts2 是一个功能强大且灵活的 MVC 框架,适用于构建复杂的 Web 应用程序...

    张龙圣思园struts2学习笔记word

    例如,通过Struts2-Spring-plugin,可以实现Action的依赖注入,增强应用的可测试性和可维护性。 总的来说,张龙圣思园的Struts2学习笔记是全面了解和掌握Struts2框架的宝贵资源,无论你是初学者还是有经验的开发者...

    SSH笔记-整合Spring2、Struts2、Hibernate4

    SSH整合是Java Web开发中的一种常见模式,它指的是Spring、Struts2和Hibernate这三大开源框架的集成。这种集成能够构建出高效、可维护的Web应用程序。以下是对SSH整合的详细解析: 一、Spring框架 Spring是Java企业...

    记录-笔记-用ANT构建-struts-spring-hibernate

    标题 "记录-笔记-用ANT构建-struts-spring-hibernate" 暗示了这篇笔记主要涉及使用Apache Ant工具来构建一个整合了Struts、Spring和Hibernate的Java Web项目。Struts是MVC(模型-视图-控制器)框架,Spring是全面的...

    Struts2笔记+Hibernate3.6笔记+Spring3笔记

    4. **Spring MVC**: 与Struts2类似的MVC框架,但更轻量级,易于测试和集成。 5. **数据访问集成**: 支持JDBC、JPA、Hibernate等多种数据访问技术。 6. **Spring Boot**: 现代化Spring应用的启动器,简化配置和启动...

    struts2四天的学习笔记

    10. **主题与皮肤**:Struts2允许定制视图展示的外观和感觉,通过主题和皮肤的设置,可以改变JSP页面的样式。 11. **ActionChain**:ActionChain允许将多个Action串联起来执行,这样可以在一个请求中处理多个业务...

    学习笔记之struts2整合Spring

    首先,为了实现整合,我们需要引入`struts2-spring-plugin-2.0.6.jar`这个包,这是Struts2提供的一个插件,专门用于与Spring的集成。这个插件提供了将Spring的IoC容器与Struts2框架无缝结合的能力。 在`web.xml`...

    struts2学习笔记黑马程序员

    ### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...

    Struts2学习笔记

    根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...

    SSH(Struts1.0+Spring+Hibernate)框架集成笔记

    ### SSH(Struts1.0+Spring+Hibernate)框架集成笔记 #### 一、概述 SSH框架集成,即Struts1.0 + Spring + Hibernate框架的整合应用,是Java Web开发中较为复杂的集成模式之一。它集合了MVC设计模式(通过Struts...

    Struts2-Spring-Hibernate

    Struts2-Spring-Hibernate(SSH)是一种经典的Java Web开发框架组合,用于构建高效、可扩展的企业级应用程序。这三个框架分别负责不同的职责:Struts2处理MVC(模型-视图-控制器)架构中的动作控制,Spring提供依赖...

    struts2课程笔记

    本课程笔记主要涵盖了Struts2的基础概念、核心功能及其工作流程。 首先,Struts2的处理流程是通过一系列的组件协作完成的,包括Filter Dispatcher(过滤器调度器)、Action、Interceptor(拦截器)和Result。当用户...

    struts2+spring+ibatis整合项目实例

    Struts2、Spring和iBatis是Java Web开发中常用的三个开源框架,它们各自负责不同的职责,协同工作可以构建出高效、松耦合的Web应用。这个整合项目实例旨在展示如何将这三个框架集成到一起,以实现更强大的功能。 1....

    黑马程序员Struts2笔记

    本笔记主要涵盖了Struts2的基础知识,包括但不限于配置、Action、拦截器、结果类型以及异常处理等内容。 1. **Struts2框架简介** Struts2是Apache软件基金会的一个开源项目,它是Struts1的升级版,弥补了Struts1在...

    spring+struts集成学习笔记和项目源码

    2. **Spring与Struts的拦截器集成**:Spring AOP的拦截器可以与Struts的拦截器结合,提供更灵活的请求处理和业务逻辑控制。 3. **事务管理**:Spring 提供的声明式事务管理可以无缝集成到Struts应用中,简化了事务...

    Struts2 + Spring + Hibernate + DWR 项目布署笔记

    在`struts2-spring-plugin-2.0.11.2.jar`中,包含了Struts2与Spring集成所需的类和配置,帮助管理Struts2的Action实例。 其次,Spring框架是Java开发的核心工具,它不仅提供了DI和AOP,还支持事务管理、数据访问...

    struts2+hibernate+spring三大框架知识点笔记

    Struts2、Hibernate和Spring是Java开发中三大主流框架,它们各自解决了Web开发中的不同问题,结合使用可以构建出高效、可维护的大型企业级应用。以下是对这三大框架及其结合使用的知识点详解。 **Struts2框架** ...

    spring-note spring 读书笔记

    这份"spring-note spring 读书笔记"深入探讨了Spring的核心概念以及如何与其他流行技术如JDBC、Hibernate、Struts和事务管理进行集成。 1. **Spring依赖注入(IOC)**: Spring的IOC容器是其核心,负责创建对象并...

Global site tag (gtag.js) - Google Analytics