不管做什么項目,肯定會用到多表關聯查詢數據,從網絡查詢得知ofbiz有三種多表關聯查詢方法
- 實現一:Screem.xml? 中的? section? 里,加? <action>,? 加? get-related
- 實現二:在代碼中使用? DynamicViewEntity對象,加入addMemberEntity,addAlias,addViewLink,再用? find? 查詢
- 實現三:在? entity.xml? 里定義? view-entity? 實體對象,在查詢時就查這個view的對象
1,方法沒寫出來,以后再補充
2, 使用finddListIteratatorByCondtion把他查出來
DynamicViewEntity dve =
new
DynamicViewEntity();
dve.addMemberEntity(
"tt", "AA"
);
dve.addAlias(
"tt", "userName"
);
dve.addAlias(
"tt", "sex"
);
dve.addRelation(
"one", "", "BB"
,
UtilMisc.toList(
new
ModelKeyMap("userName", "userName"
)));
dve.addMemberEntity(
"te", "BB"
);
dve.addAlias(
"te", "userName"
);
dve.addAlias(
"te", "name"
);
dve.addRelation(
"one", "", "AA"
,
UtilMisc.toList(
new
ModelKeyMap("userName", "userName"
)));
dve.addViewLink(
"te", "tt",
false
, UtilMisc.toList(
new
ModelKeyMap("userName", "userName"
)));
EntityListIterator salesUsageIt
= delegator.findListIteratorByCondition(dve,
null
,
null
,
null
,
null
,
null
);
list
= salesUsageIt.getCompleteList();
?
3,方法按我的理解就是相當于平常根據幾張表建一個view視圖,再查詢這個view
配置view-entity,之后查這個視圖就可以了。
<view-entity entity-name="Vview" package-name="org.ofbiz.test">
<member-entity entity-alias="TY" entity-name="AA"></member-entity>
<member-entity entity-alias="TT" entity-name="BB"></member-entity>
<alias-all entity-alias="TY"/>
<alias name="userName" entity-alias="TY" group-by="true"/>
<alias name="userName" entity-alias="TY"/>
<alias name="sex" entity-alias="TY"/>
<alias name="name" entity-alias="TT"/>
<alias name="address" entity-alias="TT"/>
<alias name="userName" entity-alias="TY" field="userName" col-alias="userName"/>
<view-link entity-alias="TY" rel-entity-alias="TT">
<key-map field-name="userName" rel-field-name="userName"/>
</view-link>
<alias name="userName" entity-alias="TT" field="userName" col-alias="userName"/>
</view-entity>
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

