`

struts2 model-driven

阅读更多

二、Model-Driven(模型驱动)Action,Action通过get方法暴露一个模型类,表单字段和模型类的属性对应。 Model-Driven概念与com.opensymphony.xwork.ModelDriven接口没有直接关系的。我们的Action不实现com.opensymphony.xwork.ModelDriven接口也有可能是Model-Driven。 例如:

 
User.java 

public class User{ 
private String userName; 
private String password; 
private String email; 
...... 
get();/set();方法 
.......... 
} 

RegisterAction.java 
public class RegisterAction implements Action{ 
private User user = new User();; 

public String execute(); throws Exception{ 
//执行用户注册操作 
} 
public User getUser();{ 
return user; 
} 
} 


页面register.html中会有: 
...... 
<input name="user.userName"> 
....... 

Model-Driven会通过OGNL的表达式语言来存取数据。例如:在注册时,表达式语言user.userName将会 执行getUser.setUserName()。 那com.opensymphony.xwork.ModelDriven接口又是做什么的呢? 它会将Object getModel()取得的Model放到ValueStack中。可以理解为将这个Model的属性追加到Action中。它主要是作用是实现类似Struts的FormBean功能。 总结:如果将Model-Driven(模型驱动)Action认为是实现com.opensymphony.xwork.ModelDriven接口的观点是错误的,Model-Driven和com.opensymphony.xwork.ModelDriven接口并没有直接的关系。我们在实际应用中一般是将Model-Driven和Field-Driven结合在一起使用,并不需要将这两个概念完全区分开来。

 

一、Field-Driven(字段驱动)Action,Action拥有自己的属性,这些属性一般是Java的基本类型。表单字段直接和Action的属性 对应。

分享到:
评论
2 楼 supben 2010-12-18  
项目中该用propertie driven 还是model driven
不知道楼主有什么比较好经验,望赐教!
本人QQ:409123969
1 楼 supben 2010-12-18  
那是因为在struts-deafult中默认已经带了model driven 的拦截器了。

相关推荐

    struts课件1-4

    在"struts课件1-2"部分,可能涵盖了以下主题: 1. Struts框架简介:讲解Struts的起源、发展历程以及其在Java Web开发中的重要地位。 2. 安装与配置:如何设置开发环境,包括添加Struts库、配置web.xml和struts-...

    Model-driven Development Environment-开源

    MDE是提供UML建模和代码生成功能的Eclipse插件。 使用MDE创建与平台无关的UML模型,然后使用MDE独特的代码生成技术MetaPrograms,在J2EE,Struts等上生成代码。

    struts-2.5.14.1-apps struts2官方例程

    Struts2是基于MVC(Model-View-Controller)设计模式的,它将业务逻辑、数据和用户界面分离,使得开发者可以独立地处理各个部分,提高了代码的可维护性和可重用性。在Struts2框架中,Action类扮演了Controller的角色...

    struts-hibernate-integration-tutorial.zip

    Struts主要负责MVC(Model-View-Controller)架构的实现,而Hibernate则是一个强大的对象关系映射(ORM)工具,用于处理数据库操作。本教程"struts-hibernate-integration-tutorial.zip"应该是关于如何将这两个框架...

    Struts2SpringUnitDemo单元测试

    1. **Struts2框架**:Struts2是一个开源的MVC框架,基于Model-View-Controller设计模式。它提供了处理HTTP请求、转发控制和视图渲染的能力。Struts2的核心是Action类,它处理用户请求并返回相应的结果。在Struts2...

    JSP上手struts2常用包2.3版

    Struts2是一个强大的Java web应用程序框架,用于构建和部署可维护、高性能的MVC(Model-View-Controller)架构的应用程序。它简化了MVC的实现,提供了丰富的特性集,使得开发者可以更专注于业务逻辑而不是繁琐的底层...

    Struts2.3.15jar包

    8. **测试支持**:Struts2支持单元测试和集成测试,方便进行TDD(Test-Driven Development)和BDD(Behavior-Driven Development)。 在压缩包"lib"中,通常会包含Struts2框架所需的多个jar文件,如核心库、依赖的...

    Struts-jar包

    5. **模型驱动(Model Driven)**:Struts2可以自动将请求参数绑定到Action的属性,实现模型驱动,简化了数据处理。 6. **值栈(Value Stack)**:Struts2使用值栈存储Action的属性,这些属性可以直接在JSP页面中...

    UML类模型驱动的J2EE代码生成器MDGen - Model-driven J2EE code generator-开源

    MDGen是UML类模型驱动的J2EE代码生成器。 它使用XML来描述类模型,并使用XSL模板来生成会话/实体EJB,Struts代码,部署描述符,数据库创建/删除脚本,资源文件和Ant构建脚本。

    java javaee struts2 spring hibernate免费学习视频教程

    根据提供的标题、描述、标签及部分内容,我们可以总结出以下与Java、Java EE、Struts2、Spring、Hibernate相关的学习知识点: ### Java基础 - **Java语言特性**:介绍Java的基本语法,包括变量、数据类型、流程...

    webwork学习资料

    WebWork最初由OpenSymphony团队开发,后成为Struts2的基础,现在是Apache软件基金会的一个项目。它提供了一种声明式编程模型,允许开发者通过注解或XML配置文件定义动作、参数绑定和异常处理等。WebWork的核心特点...

    Struts开发实例(新手适用)

    1. **MVC模式**:Struts基于Model-View-Controller (MVC) 设计模式,将业务逻辑、数据模型和用户界面分离,提高了代码的可维护性和可扩展性。在实例中,你会看到如何创建模型类、控制器Action类以及对应的视图JSP...

    Struts2登录DEMO

    6. **模型驱动(Model Driven)**:Struts2支持模型驱动模式,Action类可以直接持有业务对象,如User对象,这样可以简化数据绑定。在DEMO中,`LoginAction`可能持有一个User对象,用于接收和验证用户输入。 7. **...

    Struts2体系结构图例详解

    7. **Model Driven**:Struts2支持模型驱动模式,可以让Action直接引用业务对象,简化开发。 8. **Plug-in Architecture**:Struts2的插件架构使得扩展和集成其他功能变得容易,如Tiles、Hibernate等。 9. **OGNL...

    webwork配置详解

    - **Model-Driven Action**:与Field-Driven Action不同,Model-Driven Action使用一个模型对象来封装业务数据。模型对象持有所有相关的业务状态,而Action仅作为模型和控制器之间的桥梁。 **ActionContext(Action...

    struts2教程

    - **定义:** Struts2是一个开源的MVC(Model-View-Controller)架构实现,用于简化Java Web应用的开发流程。 - **特点:** - 基于MVC模式。 - 动作驱动(Action-driven):用户请求通过Action处理,而不是传统的...

    Struts2框架实例

    Struts2框架是一个基于Model-View-Controller(MVC)设计模式的Java Web应用程序框架,由Apache软件基金会维护。这个框架极大地简化了开发过程,提高了可维护性和可扩展性。Struts2通过整合多种优秀框架,如Tiles、...

    struts api 帮助文档

    9. **Model-Driven Actions**: Model-Driven Actions是Struts的一种设计模式,它将Action类和业务对象紧密关联,使得视图可以直接显示和修改模型的属性。 10. **Value Stack**: Struts中的Value Stack是一种数据...

    struts-2.0.11.jar

    Struts 2是一个基于Model-View-Controller(MVC)设计模式的开源框架,它极大地简化了Java Web开发过程,提供了强大的控制层结构,帮助开发者创建更稳定、可维护的代码。 Struts 2的核心功能包括: 1. **动作映射...

Global site tag (gtag.js) - Google Analytics