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

JSF的数据模型:DataModel

阅读更多
JSF提供了一个模型包:javax.faces.model。数据模型DataModel类位于此包中。这个类的说明如下:数据模型(特指这个包中的DataModel类)是JSF数据绑定技术的一个抽象,而数据绑定技术能够被JSF组件用来和各种数据源进行适配,从而支持按照行来处理他们的子组件(例如UIData)。DataModel实例中的数据集合(Data collection)是按照行对象(Row Objects)集合进行建模的,从而支持行指针(类似于数据库的游标,也是从0开始)。这个提供了通过当前行指针的位置来获得相对应的对象的一种机制。用户可以通过setWrappedData(Object obj)方法将业务对象附加到这个DataModel上,可以通过将null传递给这个方法来脱离。

UIComponent <-------> DataModel <--------> Business Model

注意:这里的UIComponent经常是UIData,我会在另外一个文章中介绍UIData.

ListDataModel, ArrayDataModel, ResultDataModel, ResultSetDataModel, ScalarDataModel

  1. ListDataModel可以方便的包装java.util.List对象。ListDataModel(java.util.List list)
  2. ArrayDataModel可以方便的包装Object[] 数组。ArrayDataModel(java.lang.Object[] array)
  3. ResultDataModel可以方便地包装JSTL的结果对象(JSTL Result Object),通常代表通过JSTL标签执行SQL语句产生的结果。ResultDataModel(javax.servlet.jsp.jstl.sql.Result result)
  4. ResultSetDataModel可以方便的包装Java对象的结果集(ResultSet of Java objects). ResultSetDataModel(java.sql.ResultSet resultSet)注意:这个结果集必须是可以滚动的(Scrollable),另外如果输入组件(可能更新模型值)通过使用值绑定来引用这个对象,这个结果集必须是可更新(Updatable)的
  5. ScalarDataModel可以方便的包装单个Java对象。ScalarDataModel(java.lang.Object scalar)
分享到:
评论

相关推荐

    jsf+springdatajpa

    **JSF + Spring Data JPA + MySQL:构建高效数据驱动的Web应用** 在现代Web开发中,JavaServer Faces (JSF)、Spring Data JPA 和 MySQL 的组合是一种常见且强大的技术栈,用于创建数据驱动的Web应用程序。这些技术...

    spring-jsf-evaluation:在代码营中使用的基本 Spring Boot 和 jsf 设置

    1. **组件模型**: JSF提供了一套UI组件,如按钮、表单、数据网格等,可以方便地在视图层构建用户界面。 2. **MVC架构**: JSF遵循Model-View-Controller模式,其中Facelets是默认的视图技术, Managed Beans是模型,...

    jsf+facelets+ajax4jsf的全部jar包

    1. **JSF框架**:JSF遵循Model-View-Controller(MVC)设计模式,将业务逻辑、数据模型和用户界面分离开来。它通过组件库、事件处理和生命周期管理,帮助开发者构建高度模块化的Web应用。JSF的核心组件包括Facelet、...

    JSF第18章

    数据模型(DataModel)是JSF框架中用于封装数据集合的对象,它可以处理列表、数组、数据库查询结果等不同类型的数据源。ChannelDataModel作为DataModel的子类,专门负责处理RSS提要数据,将其转换为JSF可以理解和渲染...

    IBM Redbook -WebSphere Studio 5.1.2 for JSF and SDO

    - **MVC架构**:在JSF中,模型层处理业务逻辑和数据,视图层负责显示这些数据,控制器层则处理用户输入并协调模型和视图之间的交互。 - **开发用户角色**:JSF设计考虑到不同的开发角色,包括UI设计师、业务逻辑...

    [JSF]使用DataModel处理表行事件的实例代码

    DataModel是JSF提供的一种机制,它允许开发者将数据集合与UI组件(如&lt;h:dataTable&gt;)绑定,实现数据的显示、编辑和事件处理。在这个实例中,我们将探讨如何使用DataModel来处理表行事件。 首先,DataModel是一个...

    JSF 一些经验 .doc

    需要注意的是,这种方法直接使用了 `dataModel`,与 Seam 的 `@DataModel` 注解不兼容,因此在使用 Seam 时需要采用其他方式实现分页功能。 #### 十、使用 Facelets 支持 Ajax 如果打算在 JSF 应用中集成 Ajax ...

    JSF分页组件2

    JavaServer Faces (JSF) 是Java平台上的一个用于构建Web应用程序的MVC(Model-View-Controller)框架。在处理大量数据时,分页功能是必不可少的,它能够帮助用户更有效地浏览和管理信息。在JSF中,我们可以使用各种...

    基于JSF,SQL SERVER2005的学生管理系统

    - **Model**:代表业务逻辑和数据模型,包括对数据库的操作,如添加新学生、修改学生信息等。 - **View**:负责展示数据,通常由JSF的UI组件组成,如表格显示学生列表,表单用于输入和编辑学生信息。 - **Controller...

    jsf学生信息管理

    在JSF中,可以使用诸如`p:paginator`这样的组件,配合数据提供者(如`DataModel`或`LazyDataModel`)来实现分页。在这个系统中,我们可能需要定义一个方法来获取当前页的数据,并在页面上显示相应的分页控制。 4. *...

    jsf+javabean+jdbc完成对表增删查改

    在IT行业中,JavaScript Server Faces(JSF)是一种用于构建企业级Web应用程序的Java框架,它遵循Model-View-Controller(MVC)设计模式。JSF提供了丰富的组件库和生命周期管理,使得开发人员能够更高效地处理用户...

    应用JSF常用标签介绍

    - **模型(Model)**:负责数据管理和业务逻辑,通常由实体类和业务逻辑类组成。 - **视图(View)**:负责用户界面的呈现,即页面布局和交互设计,由HTML、XHTML和JSF标签构成。 - **控制器(Controller)**:充当...

    jsf增删改查

    JSF提供了一种声明式的方式来处理用户交互,并与后端数据模型进行绑定,这使得开发过程更为高效。 1. **JSF框架简介** JSF是Java平台上的MVC(Model-View-Controller)框架,它允许开发者通过组件库创建丰富的用户...

    jsf+spring 的 配置文件

    5. **文件名称列表**:提供的文件名`jsf model`可能是指JSF中的模型部分,即Managed Bean或与业务逻辑相关的类。这些类通常包含了应用程序的核心逻辑,它们可能会被Spring管理并由JSF的Managed Bean调用。 综上所述...

    java面试知识点总结--JSF界面控制层技术.pdf

    每个阶段都有特定的任务,如处理用户输入、执行验证逻辑和更新服务器端的数据模型。 - **FacesContext**:JSF上下文对象,提供对当前请求和响应的访问,以及与其他JSF组件和服务交互的接口。 2. **Bean管理**: -...

    jsf+spring+hibernate

    JSF 是一种用于构建用户界面的 MVC(模型-视图-控制器)框架。它为开发者提供了丰富的组件库和事件处理机制,使得开发者能够快速地创建动态、交互式的 Web 页面。在本案例中,JSF 使用 MyFaces 1.0.9 版本,需要...

    《JSF入门》简体中文版

    7. **数据验证(Data Validation)**:JSF提供了内置的数据验证机制,可以通过JSR-303/JSR-349 Bean Validation标准进行字段级别的验证。 8. **转换和国际化(Conversion and Internationalization)**:JSF允许...

    jsf api

    JSF支持数据绑定,通过`javax.faces.model.DataModel`接口,可以把组件的值绑定到后端的数据源,如JavaBean。`javax.faces.convert.Converter`接口则用于数据类型的转换,确保组件的值在展示和存储时符合预期格式。...

    jsf自带分页

    2. **数据模型**:分页需要一个支持分页的数据模型,例如`javax.faces.model.DataModel`的子类,或者是PrimeFaces的`org.primefaces.model.LazyDataModel`。这种数据模型只加载当前页的数据,降低了内存消耗。 3. *...

    jsf猜数游戏

    4. 数据绑定(Data Binding):JSF支持将UI组件的值直接绑定到Managed Bean的属性,使得用户界面和数据模型之间的交互变得简单。例如,用户输入的猜测值可以直接绑定到Bean中的一个属性。 5. 事件处理(Event ...

Global site tag (gtag.js) - Google Analytics