`
jiasudu1649
  • 浏览: 723961 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ofbiz编程指南

阅读更多

ofbiz中对实体的访问(数据库)是通过delegate对象来进行的,而delegate对象是GenericDelegator类的一个实例,他包含有关实体操作的方法和属性。

1、delegator对象的获取

l         JSP中使用

<jsp:useBeanid="delegator"type="org.ofbiz.core.entity.GenericDelegator"scope="request"/>

l         severletevent中使用

GenericDelegatordelegator=(GenericDelegator)request.getAttribute("delegator");

l         通过一个已知的数值对象获取delegator,方法为

GenericDelegatordelegator=userLogin.getDelegator();

l         手工建立

GenericDelegatordelegator=GenericDelegator.getGenericDelegator("default")

2、            数据访问

1)以delegate对象进行数据访问

l         插入使用create方法,在插入之前一般要用makeValue方法,建立一个数值对象,然后进行插入,典型的语句为

GenericValuepartyRole=delegator.makeValue("PartyRole",UtilMisc.toMap("partyId",partyId,"roleTypeId",context.get("roleTypeId")));

partyRole.create();

l         删除remove方法,remove一般的用法为

partyRole=delegator.findByPrimaryKey("PartyRole",UtilMisc.toMap("partyId",partyId,"roleTypeId",context.get("roleTypeId")));

partyRole.remove();

l         使用store方法,包括(storestoreall)典型的语句为

delegator.storeAll(storeAll);

   store存储一个数值对象,而storeall存储用List组织起来的一组数值对象。

Storeall的用法说明:

-----------------------------------

通过findByPrimaryKey在一个实体中查找出符合条件的一条数值对象

GenericValue orderHeader = delegator.findByPrimaryKey

("OrderHeader", UtilMisc.toMap("orderId", orderId));

对数值对象中的某个值进行修改

orderHeader.set("statusId", statusId);

创建另外一个不同实体的数值对象(当然也可以采用相同的实体)。

changeFields.put("orderStatusId",

delegator.getNextSeqId("OrderStatus").toString());

changeFields.put("statusId", statusId);

changeFields.put("orderId", orderId);

changeFields.put("orderItemSeqId", orderItem.getString("orderItemSeqId"));

changeFields.put("statusDatetime", UtilDateTime.nowTimestamp());

GenericValue orderStatus = delegator.makeValue("OrderStatus", changeFields);

使用setPKFields setNonPKFields建立一个数值对象

roleType = delegator.makeValue("RoleType", null);

 roleType.setPKFields(context);

 roleType.setNonPKFields(context);

 roleType = delegator.create(roleType);

将数值对象,放到List

List toBeStored = new ArrayList();

toBeStored.add(orderHeader);

toBeStored.add(orderStatus);

将数值对象,存储到数据实体中

delegator.storeAll(toBeStored);

-----------------------------------------

l         查找使用find方法,包括findallfindAllByPrimaryKeysfindByAndfindByConditionfindByLikefindByOrfindByPrimaryKeyfindListIteratorByCondition

 

l         依据某数值对象的关系,查找关联信息,可以使用getRelated方法。包括getRelatedgetRelatedByAndgetRelatedDummyPKgetRelatedOnegetRelatedOrderBy

2)依据数值对象进行访问

在现有的数值对象上可以进行下列操作,

l         根据关系查找关联信息getRelated,包括getRelatedgetRelatedByAndgetRelatedDummyPKgetRelatedMultigetRelatedOrderBy

l         刷新本数值对象refresh

l         保存本数值对象store,主要用于修改后的保存

l         删除数值对象remove,包括删除本数值对象remove和删除某个关联的数值对象removeRelated

在现有数值对象上的操作是通过调用
分享到:
评论

相关推荐

    OFBIZ开发指南 英文

    此外,指南还将讨论最佳实践,帮助开发者遵循良好的编程习惯,以实现高效和可维护的OFBiz应用程序。 总的来说,OFBIZ开发指南是一份详尽的文档,旨在帮助开发者深入理解OFBIZ的架构和功能,掌握OFBIZ的开发流程和...

    ofbiz开发手册

    OFBiz 开发手册 OFBiz 是一个基于 Java 的开源电商平台,旨在提供一个灵活、可扩展、可配置的电商...OFBiz 开发手册旨在为开发者提供一个系统的 OFBiz 开发指南,从环境搭建到应用开发,涵盖了 OFBiz 开发的各个方面。

    Apache+OFBiz+开发初学者指南

    在学习Apache OFBiz的过程中,你可以参考提供的"Apache+OFBiz+开发初学者指南.chm"文件,这可能包含了OFBiz的基础知识、安装指南、开发环境的搭建以及基本操作的示例。同时,"OFBiz其它资源.txt"文件可能包含了一些...

    Apache OFBiz Cookbook

    - **服务端脚本编写**:教授如何使用 OFBiz 提供的脚本语言进行服务器端编程。 - **界面定制**:提供方法来个性化前端用户界面,提高用户体验。 3. **系统管理**: - **监控与日志记录**:介绍如何设置和查看...

    ofbiz开发文档

    "OFBiz开发初学者指南"是一份重要的学习资源,它涵盖了OFBiz的基本概念、安装配置、开发工具的使用、服务和组件的创建、Groovy脚本的编写等方面。这份文档将帮助新手快速上手OFBiz开发,理解其工作原理,并学会如何...

    OFBIZ官方文档

    OFBiz具备灵活的架构,可以通过编程来扩展新的功能或者定制现有功能。 【标题】和【描述】中提到的文档名为《OFBIZ官方文档》,具体为《OFBizTutorial-ABeginnersDevelopmentGuide-140115-0148-28488.pdf》。该文档...

    ofbiz综合技术文档

    三、编程指南 29 四、编程参考 29 第三部分、ofbiz实体 29 一、实体引擎配置指南 29 1、介绍 29 2、资源加载器 30 3、JTA元素 30 4、Delegator元素 31 5、实体模型XML文件 31 6、实体组XML文件 31 7、字段类型XML...

    ofbiz学习资料

    - **Ofbiz事件和调度**:了解事件驱动的编程模型,以及如何设置定时任务和事件监听器。 - **Ofbiz的国际化与本地化**:对于多语言、多地区的企业应用,理解和实现Ofbiz的i18n和l10n功能是必不可少的。 - **Ofbiz的...

    java 开源电子商务框架开发大全

    - `ofbiz_cn.doc`和`Ofbiz综合文档.doc`:这两份文档可能包含了OFBiz的中文教程和综合指南,帮助初学者快速理解框架的核心概念和使用方法。 - `OFBiz开发快速入门.rar`:这可能是一个压缩包,里面包含OFBiz的快速...

    minilang api

    《Mini-Language API初学者指南》 Mini-Language是一种用于简化商业软件中复杂或频繁任务的语言,类似于解释器模式或标记语言。其目标是通过减少执行点的复杂性,提高代码的可读性和维护性,尤其适合那些对软件不...

    java offbiz 电子商务 系统 资料

    快速入门指南通常会涵盖从项目创建到部署上线的整个流程,是学习Offbiz开发的重要参考资料。 在实际开发过程中,掌握Java编程语言和一些Web开发基础是必不可少的。Offbiz使用Ant作为构建工具,因此熟悉Ant脚本编写...

    OpenDM-开源

    在提供的压缩包文件“OpenDM”中,可能包含了源代码、编译脚本、配置文件、文档以及安装指南等资源。用户需要有一定的技术背景,比如Java编程和数据库管理经验,才能成功安装和运行OpenDM。通常,安装过程会涉及配置...

Global site tag (gtag.js) - Google Analytics