`
a2429854489
  • 浏览: 3271 次
社区版块
存档分类
最新评论

Struts 2设计者指南02:对象工厂

阅读更多

文章翻译自Struts 2官方文档

 

对象工厂(ObjectFactory)实例化框架创建的所有的对象。对象工厂提供了框架集成IoC容器,例如Spring,Pico,Plexus等等,的方法。

 

定制

继承ObjectFactory

定制ObjectFactory必须继承ObjectFactory或它的子类,并且要有一个默认的无参的构造器。

 

为了注册一个定制的ObjectFactory,在struts.properties添加或编辑一条条目

struts.objectFactory=foo.bar.MyCustomObjectFactory

 其中foo.bar.MyCustomObjectFactory是定制的对象工厂。

public class MyObjectFactory extends ObjectFactory {
    .....
}

 定义专用的工厂

如果你仅仅想继承ObjectFactory的以部分,也就是改变Result Types创建的方式,你可以实现ResultFactory接口并用一个专用的名字注册它,更多细节参考Extension Points。原始的ObjectFactory将使用这些专用的工厂来完成工作。这样也可以定义专用的工厂——ObjectFactory的原始功能可以被实现了下面这些接口的类获得。更多细节请检查ObjectFactory的源码。从版本2.3.16以后可以获得所有的这些工厂。

 

工厂接口的列表:

  • ResultFactory——ObjectFactory创建Result Types的专用接口
  • StrutsResultFactory ResultFactory的内部实现,用来检查Result是否实现ParamNameAwareResult接口来限制Result实例上设置的参数的名字,更多信息参考Result Types。
  • ActionFactory——ObjectFactory创建action的专用接口
  • InterceptorFactory——ObjectFactory创建拦截器的专用接口
  • ValidatorFactory——ObjectFactory创建验证器的专用接口
  • ConverterFactory——ObjectFactory创建TypeConverter实例的专用接口
  • UnknownHandlerFactory——ObjectFactory创建Unknown Handlers(从版本2.3.18开始)实例的专用接口
分享到:
评论

相关推荐

    Struts 2学习

    - **struts.objectFactory**:指定Struts 2使用的对象工厂,默认情况下Struts 2使用内置的对象工厂。如果希望使用如Spring这样的第三方对象工厂,可以通过设置该属性为`Spring`来启用Spring对象工厂。 - **struts....

    hibernate,Struts开发指南整合

    【hibernate,Struts开发指南整合】是一个针对初学者的综合教程,旨在帮助读者掌握两种主流的Java Web开发框架——Hibernate和Struts。Hibernate是一个强大的对象关系映射(ORM)框架,它允许开发者用面向对象的方式...

    spring_struts_hibernate整合开发书籍

    书中将详细介绍Hibernate的实体类设计、持久化映射文件(Hibernate.cfg.xml和.hbm.xml)、Session工厂的创建,以及CRUD操作的实现。 Spring、Struts和Hibernate的整合是Java Web开发中的一项关键技术。通过整合,...

    实用J2EE设计模式编程指南

    2. **工厂模式**:提供创建对象的接口,但不直接实例化对象。在J2EE中,EJB(Enterprise JavaBeans)的`@EJB`注解就是一种工厂模式的体现,它能自动创建和注入Bean实例。 3. **依赖注入(DI)模式**:控制反转的一...

    Java面试准备指南 Java面试准备指南

    【Java面试准备指南】是为Java开发者准备的面试攻略,旨在帮助求职者充分准备Java相关的技术面试。在面试前,你需要关注以下几个方面: 1. **自我介绍**:清晰地介绍你的Java开发经验,涵盖你参与过的项目类型和...

    软件设计师考试大纲与培训指南(2009版)

    4. **设计模式与框架**:设计模式是解决常见软件设计问题的标准化解决方案,如工厂模式、单例模式、观察者模式等。框架则是为了快速开发应用提供的一种半成品结构,如Spring、Struts或Hibernate。考生需了解常用的...

    学习资料java

    综合这些资源,学习者可以通过阅读这些文档,深入理解Java编程,掌握Struts 2框架的应用,以及利用Hibernate进行高效的数据持久化。这将为Java Web开发者构建稳定、可维护的大型系统打下坚实的基础。

    中文帮助文档合集

    4. **Java设计模式**:设计模式是软件设计中解决问题的常见方法,如单例模式、工厂模式、观察者模式等,它们是Java编程中的最佳实践。 5. **JDK(Java Development Kit)**:是Java编程的基础,包含了编译器、调试...

    j2ee体系chm帮助文档大全

    Java设计模式的学习可以帮助你提高代码质量和可维护性,通常包括单例、工厂、观察者、装饰器等经典模式,理解它们能让你在面对复杂系统时有更清晰的设计思路。 5. **XML指南**:XML(Extensible Markup Language)...

    Wicket中文开发指南

    ### Wicket中文开发指南知识点概览 #### 一、Wicket简介 **1.1 Wicket的历史背景** Wicket是一个成熟的、开源的Java Web应用程序框架,最初由挪威开发者Eelco Hillenius创建。它的设计理念是为了简化Web开发,并...

    javaee

    5. **Struts 2.1权威指南**:Struts 2是一个基于MVC架构的Web应用框架,这本书可能提供了使用Struts 2构建Web应用的全面指导。 6. **Maven实战**:Maven是Java项目构建自动化工具,这本书可能介绍了Maven的基本用法...

    Java学习+面试指南.zip

    8. **设计模式**:设计模式是解决软件设计中常见问题的通用解决方案,如单例、工厂、观察者、装饰器等模式,面试中经常会被问到。 9. **JVM原理**:理解Java虚拟机的工作原理,包括内存区域(堆、栈、方法区等)、...

    java开发文档

    例如单例模式、工厂模式、观察者模式等,学习和应用设计模式能够提升代码的可读性、可维护性和复用性。 压缩包内的子文件可能包含以下内容: - **struts135.CHM**:这可能是一个关于Struts 1.x版本的参考手册,...

    Java学习书籍

    5. **Struts快速学习指南**:Struts是早期非常流行的MVC框架,虽然现在已被Spring所替代,但其设计思想对于理解现代Web框架仍有价值。指南会讲解Struts的架构、Action、配置文件、Tiles视图管理、国际化、异常处理等...

    clj资源parttwo

    4. **设计模式迷你手册.chm**:设计模式是软件工程中解决常见问题的最佳实践,这份手册可能涵盖了单例、工厂、观察者、装饰者等经典设计模式,有助于提高代码质量和可维护性。 5. **精通 Struts :基于 MVC 的 ...

    JAVA程序员面试宝典

    1. 创建型模式:熟悉单例、工厂、抽象工厂、建造者、原型等模式,理解它们在软件设计中的作用。 2. 结构型模式:掌握代理、装饰、适配器、桥接、组合、外观、享元等模式,提高代码的可扩展性和灵活性。 3. 行为型...

    Java/J2EE 面试伴侣

    - **观察者模式**:定义了对象之间的一对多依赖关系,当一个对象状态改变时,所有依赖于它的对象都会得到通知并自动更新。 7. **数据库交互**: - **JDBC(Java Database Connectivity)**:Java与数据库连接的...

    SSH配置向导

    通过本指南的学习,读者将能够掌握Struts、Spring、Hibernate三个框架的基本概念与使用方法,并学会如何将它们整合起来构建一个完整的网上购物系统。 #### 二、知识点详解 ##### 1. Hibernate基础 - **定义**:...

Global site tag (gtag.js) - Google Analytics