1.在ftl中调用服务
<#assign result=dispatcher.runSync("服务名",Static["org.ofbiz.base.util.UtilMisc"].toMap(key,value))>
2.在ftl中查询实体
<#assign statusItemGen=delegator.findByPrimaryKey("StatusItem",Static["org.ofbiz.base.util.UtilMisc"].toMap("statusId",facc.statusId?if_exists))>
3.在groovy中如何获取应用中的某个文件
fileUrl=new ComponentLocationResolver().resolveLocation("component://应用名/目录/");
file=new File(fileUrl.getPath()+文件名);
或者
String fileName="文件名";
String location="component:////应用名/目录/";
URL locationUrl=FlexibleLocation.resolveLocation(location+fileName);
4.jdbc查询
public BigDecimal getOrderReceivedPaymentTotal(String orderId) {
// String helperName = delegator.getGroupHelperName("org.ofbiz");
// Connection conn =null;
// Statement statement = null;
// ResultSet rs = null;
// BigDecimal db = null;
// try {
// conn = ConnectionFactory.getConnection(helperName);
// statement = conn.createStatement();
// statement.execute("SELECT sum(MAX_AMOUNT) FROM ORDER_PAYMENT_PREF_AND_PAYMENT where order_id='"+
// orderId+"' and status_Id='PAYMENT_RECEIVED' and paymentStatusId='PMNT_RECEIVED'");
// rs = statement.getResultSet();
// if(rs.next()) {
// db = rs.getBigDecimal(1);
// }
// } catch(Exception e) {
// System.out.println(e);
// } finally {
// try {
// if(rs != null) {
// rs.close();
// }
// if(statement != null) {
// statement.close();
// }
// if(conn != null) {
// conn.close();
// }
// } catch(Exception e) {
// System.out.println(e);
// }
// }
// return db;
// }
5.条件查询
exprList = [EntityCondition.makeCondition("partyId", EntityOperator.EQUALS, userLogin.partyId),
EntityCondition.makeCondition("shoppingListTypeId", EntityOperator.EQUALS, "SLT_WISH_LIST"),
EntityCondition.makeCondition("listName", EntityOperator.NOT_EQUAL, "Auto Suggestions")];
condition = EntityCondition.makeCondition(exprList, EntityOperator.AND);
allShoppingLists = delegator.findList("ShoppingList", condition, null, ["createdStamp DESC"], null, false);
例如查询一个时间段
exprList = [EntityCondition.makeCondition("createdByUserLogin", EntityOperator.EQUALS, userLogin.userLoginId),
EntityCondition.makeCondition("createdDate", EntityOperator.BETWEEN, [UtilDateTime.getDayStart(UtilDateTime.nowTimestamp()),UtilDateTime.getDayEnd(UtilDateTime.nowTimestamp())])];
condition = EntityCondition.makeCondition(exprList, EntityOperator.AND);
productPromoCodes=delegator.findByCondition("ProductPromoCode",condition,null,null);
多种条件的组合
exprList = [EntityCondition.makeCondition("statusId", EntityOperator.NOT_EQUAL, "PARTY_DISABLED")
, EntityCondition.makeCondition("statusId", EntityOperator.NOT_EQUAL, null)];
CondList = EntityCondition.makeCondition(exprList, EntityOperator.AND);
CondList1 = EntityCondition.makeCondition("statusId", EntityOperator.EQUALS, null);
statusPartyDisable = EntityCondition.makeCondition([CondList1, CondList], EntityOperator.OR);
entityConditionList = null;
if (prepareResult.entityConditionList != null) {
ConditionList = [ prepareResult.entityConditionList, statusPartyDisable ];
entityConditionList = EntityCondition.makeCondition(ConditionList);
} else if (context.noConditionFind == "Y") {
entityConditionList = statusPartyDisable;
}
6.读取配置文件
currencyUom = UtilProperties.getPropertyValue("general.properties", "currency.uom.id.default", "CNY");
7.对查询的结果过滤
supProduct = EntityUtil.filterByDate(supProduct, UtilDateTime.nowTimestamp(), "availableFromDate", "availableThruDate", true);
8.更新记录
GenericValue pref = delegator.findByPrimaryKey("OrderPaymentPreference", UtilMisc.toMap("orderPaymentPreferenceId", prefId));
pref.set("securityCode", securityCode);
pref.store();
9.distinct语句的查询
List<EntityCondition> conditionList = UtilMisc.toList(
EntityCondition.makeCondition("contactListId", EntityOperator.EQUALS, contactList.get("contactListId")),
EntityCondition.makeCondition("statusId", EntityOperator.EQUALS, "CLPT_ACCEPTED"),
EntityCondition.makeCondition("preferredContactMechId", EntityOperator.NOT_EQUAL, null),
EntityUtil.getFilterByDateExpr(), EntityUtil.getFilterByDateExpr("contactFromDate", "contactThruDate")
);
List<String> fieldsToSelect = UtilMisc.toList("infoString");
EntityCondition conditions = EntityCondition.makeCondition(conditionList, EntityOperator.AND);
List<GenericValue> sendToEmails = delegator.findByCondition("ContactListPartyAndContactMech", conditions, null, fieldsToSelect, null,
new EntityFindOptions(true, EntityFindOptions.TYPE_SCROLL_INSENSITIVE, EntityFindOptions.CONCUR_READ_ONLY, true));
分享到:
相关推荐
### FTL_闪存转换层、flash、nand flash:深度解析 #### 一、FTL(Flash Translation Layer):闪存转换层概览 FTL,即Flash Translation Layer(闪存转换层),是位于闪存(特别是NAND Flash)与上层文件系统之间...
FTL(FreeMarker)是一种基于Java的模板引擎,主要用于生成动态Web内容。它与XML(Extensible Markup Language)紧密关联,因为XML常被用来作为数据结构来存储和传输信息,而FTL则负责将这些数据渲染成用户友好的...
提供的压缩包"EditPlus (带ftl格式化)"可能包含了预配置的EditPlus设置文件,或者是一些FTL相关的插件或模板,以增强EditPlus对FTL的支持。解压后,按照说明导入到EditPlus中,即可立即享受优化的FTL编辑体验。 ...
Java使用FTL(FreeMarker Template Language)模板生成多表格复杂性Word文档是一项常见的技术需求,尤其是在需要自动生成报告或批量处理文档的场景中。FreeMarker是一个强大的、基于模板的Java库,它允许开发者将...
在这个场景下,"Freemarker代码生成器实体映射xml的ftl模板文件"是指利用Freemarker模板技术来创建一个用于生成XML实体映射文件的模板。这个`XML.ftl`文件就是核心,它是Freemarker模板的实例,其中定义了如何根据...
FTL入门文档学习 FTL(FreeMarker Template Language)是一种基于模板的文档生成技术,它允许设计者和程序员分工协作,设计者专注于页面的视觉设计,而程序员负责生成页面所需的数据。FTL通过在HTML或其它文本中...
费思FTL系列可编程直流电源pdf,FTL 是一款高性能、多功能、中小功率的,系列可编程直流线性电源。产品稳定成熟,并具有过载、极性接反、过压、过流、过温度等全面的保护功能,可保持电源和负载在不稳定环境下的工作...
FreeMarker (FTL) 是一个模板引擎,常用于前端与后端数据的渲染。它提供了丰富的功能,包括数值计算、默认值处理、类型转换以及字符串操作。以下是对这些知识点的详细说明: 1. **FTL 正则表达式计算**: 在 FTL ...
FTL,全称为FreeMarker Template Language,是一种模板引擎,主要用于生成动态内容,尤其在Web开发中广泛应用。它是由Apache软件基金会的FreeMarker项目提供的一种Java库。在Java Web开发中,FTL通常与Spring框架、...
本主题聚焦于如何利用一个文档模板原件和将其转换为.ftl(FreeMarker)格式来生成动态的Word文档。FreeMarker是Java的一个模板引擎,常用于生成HTML、XML等静态或动态文本,但也可扩展到生成Word文档。 首先,理解...
在实际应用中,FTL的设计有多种方式,如静态FTL、动态FTL、映射表在内存的FTL和映射表在闪存的FTL等,每种都有其优缺点,开发者需根据项目需求选择合适的实现方案。例如,对于资源有限的嵌入式系统,可能需要选择...
FTL(FreeMarker Template Language)编辑器是一种专为处理FreeMarker模板语言设计的文本编辑工具。FreeMarker是一个开源的Java库,它用于生成动态Web内容,尤其是在Java应用程序中广泛使用,如Spring MVC框架。FTL...
ftl的使用非常普及,但是,但是里面的语法却让人很难懂得,这里有详细的技术帮助文档
### 关于Eclipse中FTL模板的技巧设置方法 #### 概述 FreeMarker Template Language (FTL) 是一种用于生成文本输出的模板语言。它广泛应用于Java Web开发中,帮助开发者快速构建动态网页。然而,对于开发者而言,...
由于提供的文件内容中重复出现了联系信息,并未提供E H液体音叉限位开关FTL50的详细产品信息,因此难以从这部分内容中生成具体的产品知识点。不过,根据标题“E H液体音叉限位开关FTL50产品说明书”我们可以推断一些...
### Freemarker(FTL)常见语法详解 Freemarker是一种基于模板引擎技术的软件,用于生成文本输出。它被广泛应用于Web开发中,用来生成HTML页面或其他格式的文档。Freemarker使用简单直观的语法,使得开发者能够轻松...
在Web开发中,尤其是在使用Spring框架时,FTL与MVC模式相结合,可以方便地将数据模型渲染成用户友好的视图。 PDF(Portable Document Format)是一种广泛使用的文件格式,用于存储和共享具有固定布局的文档。由于其...
### E H FTL31音叉开关技术资料关键知识点总结 #### 一、产品概述 - **产品名称**:Liquiphant FTL31 音叉限位开关 - **应用领域**:广泛应用于罐体、容器和管道中进行液体限位检测,特别适用于清洗系统、过滤系统...