`

struts2分模块与action生命周期

阅读更多
1. 分模块

struts.xml
<include file=""></include>

新建项目HeadFirstStruts2Chap02_04


CheLiangAction.java

package com.andrew.action;
import com.opensymphony.xwork2.ActionSupport;
public class CheLiangAction extends ActionSupport {
    @Override
    public String execute() throws Exception {
        System.out.println("执行了CheLiangAction Action的默认方法");
        return SUCCESS;
    }
}

ZiChanAction.java

package com.andrew.action;
import com.opensymphony.xwork2.ActionSupport;
public class ZiChanAction extends ActionSupport {
    @Override
    public String execute() throws Exception {
        System.out.println("执行了ZiChanAction Action的默认方法");
        return SUCCESS;
    }
}

cheliang.xml

<package name="cheliang" namespace="/cheliang" extends="struts-default">
    <action name="cheliang" class="com.andrew.action.CheLiangAction">
        <result name="success">${pageContext.request.contextPath}/success.jsp</result>
    </action>
</package>

zichan.xml

<package name="zichan" namespace="/zichan" extends="struts-default">
    <action name="zichan" class="com.andrew.action.ZiChanAction">
        <result name="success">${pageContext.request.contextPath}/success.jsp</result>
    </action>
</package>

struts.xml

<struts>
    <include file="cheliang.xml"/>
    <include file="zichan.xml"/>
</struts>

success.jsp

Ok!

http://localhost:8080/HeadFirstStruts2Chap02_04/cheliang/cheliang
Ok!
执行了CheLiangAction Action的默认方法
http://localhost:8080/HeadFirstStruts2Chap02_04/zichan/zichan
Ok!
执行了ZiChanAction Action的默认方法


2. 生命周期

新建项目HeadFirstStruts2Chap02_06


HelloAction.java

package com.andrew.action;
import com.opensymphony.xwork2.ActionSupport;
public class HelloAction extends ActionSupport {
    public HelloAction() {
        System.out.println(this);
    }
    @Override
    public String execute() throws Exception {
        return SUCCESS;
    }
}

struts.xml

<package name="manage" namespace="/" extends="struts-default">
    <action name="hello" class="com.andrew.action.HelloAction">
        <result name="success">success.jsp</result>
    </action>
</package>

success.jsp

Ok!

http://localhost:8080/HeadFirstStruts2Chap02_06/hello
com.andrew.action.HelloAction@1e3ec646
http://localhost:8080/HeadFirstStruts2Chap02_06/hello
com.andrew.action.HelloAction@46867b6b
分享到:
评论

相关推荐

    struts2总结大全

    Struts2的包配置是其灵活性的关键,允许开发者按功能或模块组织Action和拦截器。一个包可以包含多个子包,子包继承父包的配置,可以覆盖或添加新的配置。包还支持动态方法映射,使Action方法的调用更加灵活。 八、...

    struts2 interceptor介绍

    Interceptor的执行遵循一定的顺序,且根据其在Action执行生命周期中的位置不同,可以分为三种主要类型: 1. **Before拦截**:这类拦截器的代码在`invoke`方法被调用之前执行,按照在拦截器链中定义的顺序依次运行。...

    Struts2+Spring+Maven+MongoDB

    Spring的IoC容器管理了应用对象的生命周期和依赖关系,而AOP则允许开发者定义横切关注点,如日志、安全检查等,使得代码更加模块化和易于维护。Spring与Struts2的整合可以进一步提升应用的结构化和可测试性。 Maven...

    Struts2与Spring2.5的整合

    - **依赖注入**:Spring 管理了 Action 类的生命周期和依赖,使得代码更易于测试和维护。 - **解耦合**:业务逻辑和服务层之间的耦合度降低,提高了代码的可复用性和可扩展性。 - **AOP**:Spring 的 AOP 支持可以在...

    spring+hibernate+struts2+freemarker SSH2 新闻发布系统

    在新闻发布系统中,Freemarker被用作视图层技术,与Struts2结合,根据Action返回的数据动态生成静态页面。这样可以将业务逻辑与表现逻辑分离,使得代码更加清晰。 5. **用户认证与权限管理** 系统中预设了一个管理...

    spring与struts2整合

    而第二种方法中,Action的生命周期由Struts2管理,通常设置为singleton作用域,但也可以通过插件配置为prototype。 通过这种方式,Spring可以负责对象的依赖注入和管理,而Struts2则专注于处理HTTP请求和视图展示,...

    Spring+hibernate+struts2 论坛项目

    在本论坛项目中,Spring作为核心框架,负责管理各个组件的生命周期,通过DI将业务逻辑对象与数据访问层对象绑定,实现解耦合。此外,Spring的AOP功能可以方便地实现日志记录、权限控制等横切关注点。 【Hibernate...

    struts.properties详解

    默认值为`spring`,这意味着默认情况下Struts2会使用Spring框架来管理对象的生命周期。 - **struts.objectFactory.spring.autoWrite**:指定Spring框架的自动装配模式,默认值为`name`,即默认按照Bean的名称进行...

    MVC框架struts1.2.9

    9. **预定义的生命周期方法**: 如validate()和execute(),使得业务逻辑的组织更为清晰。 10. **配置管理**: 通过struts-config.xml文件进行全局配置,包括Action、ActionForm、ActionMapping等。 使用Struts 1.2.9...

    struts与hibernate结合的BBS系统

    Spring可以帮助管理Struts中的Action和Hibernate的SessionFactory实例,实现对象的生命周期管理和事务控制。通过Spring,可以将Service层和DAO层的实例注入到Action中,这样Action无需关心对象的创建和销毁,只需...

    Struts课件(分章节)

    11. **生命周期**:了解Action实例的生命周期对于优化性能至关重要,包括创建、初始化、处理请求、清理和销毁等阶段。 以上知识点是Struts课件中可能会涉及的内容,通过深入学习和实践,你可以构建出功能强大的企业...

    struts2+spring+jpa网上商城

    在本项目中,Spring可能被用来管理Struts2 Action的生命周期,注入必要的服务,并提供事务管理。Spring还允许开发者通过XML配置或Java配置来定义bean,以及它们之间的依赖关系。 JPA是Java平台上的ORM(Object-...

    hibernate+struts2+sping结合制作的物料管理

    在物料管理系统中,Spring作为“胶水”框架,整合了Hibernate和Struts2,管理它们的生命周期和依赖关系。Spring的DI特性使得组件之间的耦合度降低,便于代码复用和测试。而AOP则可以方便地实现如事务管理这样的横切...

    struts2 Hibernate spring 圖書管理

    Struts2的核心概念包括Action、Interceptor和Result,这些元素协同工作,使得开发者能够按照约定优于配置的方式组织代码。 Hibernate则是一个对象关系映射(ORM)框架,简化了Java应用程序与数据库之间的交互。在...

    论坛系统(Struts 2+Hibernate+Spring实现)

    4. 搜索与分类:通过Struts 2的拦截器和Action,实现对帖子的搜索和分类展示。 5. 权限管理:Spring的安全模块可以用来实现用户权限的控制,如管理员和普通用户的区别对待。 通过整合Struts 2、Hibernate和Spring,...

    java Struts 框架

    在SSH组合中,Spring负责管理应用程序的生命周期和配置,包括数据库连接、事务管理和Service层的bean管理。 Hibernate是一个对象关系映射(ORM)框架,它使得Java开发者可以使用面向对象的方式来操作数据库。...

    spring3_hibernate4_struts2_BBS

    Spring的IoC容器管理着应用对象的生命周期,通过配置或自动扫描来注入依赖。此外,Spring还提供了对其他框架如Hibernate的集成支持,使得这些框架可以无缝协作。 **Hibernate 4** Hibernate 4是Hibernate ORM框架的...

    struts2+spring+hibernate实现资源分享系统

    同时,Spring还提供了Spring MVC模块,可以与Struts2一起工作,进一步增强应用的灵活性和可扩展性。 Hibernate是一个强大的ORM(Object-Relational Mapping)工具,它简化了Java应用与关系型数据库之间的交互。通过...

    Struts BBS论坛系统

    在实际学习和开发过程中,理解Struts的请求处理流程和Action的生命周期,以及Hibernate的实体映射和事务管理是关键。同时,为了提高性能和用户体验,可能还需要了解缓存策略(如Hibernate的二级缓存)、数据库优化...

Global site tag (gtag.js) - Google Analytics