ofbiz多表外键关联查询
- 实现一:Screem.xml 中的 section 里,加 <action>, 加 get-related
- 实现二:在代码中使用 DynamicViewEntity对象,加入addMemberEntity,addAlias,addViewLink,再用 find 查询
DynamicViewEntity dve = new DynamicViewEntity();
dve.addMemberEntity("TMP", GlobalConstant.TRUST_MALL_PRODUCT_ENTITY_NAME);
dve.addAlias("TMP", "productId");
dve.addAlias("TMP", "productCode");
dve.addAlias("TMP", "productName");
dve.addAlias("TMP", "productPrice");
dve.addAlias("TMP", "prodStatus");
dve.addAlias("TMP", "productStandardPrice");
dve.addAlias("TMP", "inventoryStatus");
dve.addAlias("TMP", "productKeywords");
dve.addAlias("TMP", "productDesc");
dve.addAlias("TMP", "prodCreatedBy");
dve.addAlias("TMP", "createdStamp");
dve.addAlias("TMP", "prodModifiedBy");
dve.addAlias("TMP", "lastUpdatedStamp");
dve.addAlias("TMP", "shopId");
dve.addRelation("one", "", "MallProductCategory", UtilMisc.toList(new ModelKeyMap("categoryId", "categoryId")));
dve.addMemberEntity("MPC", "MallProductCategory");
dve.addAlias("MPC", "categoryId");
dve.addAlias("MPC", "sortedName");
dve.addViewLink("TMP", "MPC", false, UtilMisc.toList(new ModelKeyMap("categoryId", "categoryId")));
- 实现三:在 entity.xml 里定义 view-entity 实体对象,在查询时就查这个view的对象
<view-entity entity-name="VShopReview" package-name="com.ufinity.trustmall">
<member-entity entity-alias="SR" entity-name="ShopReview"></member-entity>
<member-entity entity-alias="TMUI" entity-name="TrustMallUserInfo"></member-entity>
<member-entity entity-alias="TMS" entity-name="TrustMallShop"></member-entity>
<member-entity entity-alias="SRR" entity-name="ShopReviewReported"></member-entity>
<alias-all entity-alias="SR"/>
<alias name="shopReviewId" entity-alias="SR" group-by="true"/>
<alias name="userName" entity-alias="TMUI"/>
<alias name="shopName" entity-alias="TMS"/>
<alias name="createdStamp" entity-alias="SR"/>
<alias name="reporterId" entity-alias="SRR" field="userId" col-alias="userId"/>
<view-link entity-alias="SR" rel-entity-alias="TMUI">
<key-map field-name="userId" rel-field-name="userId"/>
</view-link>
<view-link entity-alias="SR" rel-entity-alias="TMS">
<key-map field-name="shopId" rel-field-name="shopId"/>
</view-link>
<view-link entity-alias="SR" rel-entity-alias="SRR" rel-optional="true">
<key-map field-name="shopReviewId" rel-field-name="shopReviewId"/>
</view-link>
</view-entity>
ofbiz多表外键关联查询的更多相关文章
- 基于EF的数据外键关联查询
现在很多ORM不自带外键关联的实体查询,比如我查询用户,用时将关联的角色信息查询出来,那么就要进行2次查询,很麻烦.而我现在要做的就是基于EF的外键关联查询.很方便的. 首先,创建基础查询的BaseS ...
- pythonのsqlalchemy外键关联查询
#!/usr/bin/env python import sqlalchemy from sqlalchemy import create_engine from sqlalchemy.ext.dec ...
- .netcore2.1 ef 使用外键关联查询
//实体类 [Table("invoiceinfo", Schema = "obs")] public class invoice { [Key] public ...
- sql查询指定表外键约束
//////////////////查询指定表外键约束select a.name as 约束名, object_name(b.parent_object_id) as 外键表, d.name as 外 ...
- Entity FrameWork对有外键关联的数据表的添加操作
前天做了一个MVC Entity FrameWork项目,遇到有外键关联的数据编辑问题.当你编辑的时候,按照正常的逻辑,把每个字段的数据都对号入座了,然后点击保存按钮,本以为会顺理成章的编辑数据,但是 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (29) ------ 第五章 加载实体和导航属性之过滤预先加载的实体集合和修改外键关联
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-13 过滤预先加载的实体集合 问题 你想过滤预先加载的实体集合,另外,你想使用 ...
- Entity Framework - 理清关系 - 基于外键关联的单向一对一关系
注:本文针对的是 Entity Framework Code First 场景. 之前写过三篇文章试图理清Entity Framework中的一对一关系(单相思(单向一对一), 两情相悦(双向一对 ...
- 【Python】django模型models的外键关联使用
Python 2.7.10,django 1.8.6 外键关联:http://www.bubuko.com/infodetail-618303.html 字段属性:http://www.cnblogs ...
- Python sqlalchemy orm 多外键关联
多外键关联 注:在两个表之间进行多外键链接 如图: 案例: # 创建两张表并添加外键主键 # 调用Column创建字段 加类型 from sqlalchemy import Integer, For ...
随机推荐
- linux内核挂载文件系统的两种方式
1.nfs方式(挂载的为文件夹) bootargs=root=/dev/nfs nfsroot=192.168.1.105:/mnt/rootfs/rootfs ip=192.168.1.88:192 ...
- Java并发之同步原语
volatile: 定义:Java编程语言允许线程访问共享变量,为了确保共享变量内被准确和一致性地更新,线程应该确保通过排它锁单独获得这个变量.根据volatile的定义,volatile有锁的语义. ...
- css渐变知识知多少
<!DOCTYPE html><html><head><meta charset="utf-8"> <title>教程( ...
- spring和Quartz的集群(二)
一:前沿 写完了这两篇才突然想起来,忘记了最关键的东西,那就是在配置文件这里的配置,还有数据库的配置.这是郁闷啊!继续吧! 二:内容配置 我们在集成的时候需要自己配置一个quartz.properti ...
- 图论:Prufer编码
BZOJ1211:使用prufer编码解决限定结点度数的树的计数问题 首先学习一下prufer编码是干什么用的 prufer编码可以与无根树形成一一对应的关系 一种无根树就对应了一种prufer编码 ...
- C11性能之道:标准库优化
1.emplace_back减少内存拷贝和移动 emplace_back能通过参数构造对象,不需要拷贝或者移动内存,相比pusk_back能更好的避免内存的拷贝和移动,使容器插入元素性能得到进一步提升 ...
- nginx 状态监控
通过查看Nginx的并发连接,我们可以更清除的知道网站的负载情况.Nginx并发查看有两种方法(之所以这么说,是因为笔者只知道两种),一种是通过web界面,一种是通过命令,web查看要比命令查看显示的 ...
- 【Codeforces542E】Playing on Graph [Bfs][Dfs]
Playing on Graph Time Limit: 20 Sec Memory Limit: 512 MB Description Input Output Sample Input 5 4 ...
- 省队集训 Day3 陈姚班
[题目大意] 给一张网格图,上往下有流量限制,下往上没有,左往右有流量限制. $n * m \leq 2.5 * 10^6$ [题解] 考场直接上最大流,50分.竟然傻逼没看出狼抓兔子. 平面图转对偶 ...
- 简易微信小程序签到功能
一.效果图 点击签到后 二.数据库 用一张数据表存用户签到的信息,每次用户签到都会往表中添加一条记录了用户id和签到日期的数据,如下图 三.后端 后端写两个接口,一个用于查询用户今日是否签到和签到记录 ...