首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Libraray/Toolkit API:在包含未知对象时如何处理组合

Libraray/Toolkit API:在包含未知对象时如何处理组合
EN

Stack Overflow用户
提问于 2012-10-01 17:24:11
回答 1查看 30关注 0票数 0

想不出一个好的标题。

我正在创建一个库/工具包,用于在数据库中存储和搜索特殊类型的数据(与问题无关,但它是化学结构)。搜索函数返回一个化合物列表,其中一个化合物由一个或多个化学物质组成。

使用该工具包的开发人员可以使用它来创建多个存储化合物的应用程序。这个想法是所有应用程序应该只有一个存储。例如,假设他创建了一个库存系统,其中每个容器都包含一个化合物。他还创建了一个用于存储生物测试结果的应用程序。我们现在有两个类(Container,BiologicalTestResult),它们包含一个化合物,但是API不知道。我想要的是,当存储化合物时,API应该能够存储它出现在哪些应用程序中。因此,当在应用程序A中搜索时,只返回应用程序A中实际存在的化合物。

此外,在搜索时,API应该能够过滤特定于该应用程序的数据,例如:testResult = "Failed“或remainingAmount > 100。

什么是实现这一目标的好方法?我认为最简单的解决方案是通过字符串连接来构建SQL语句(有相关的缺点)。这将消除工具包存储它所属的应用程序的需要。示例:

代码语言:javascript
复制
search(String searchTerm, String selectFields, String joinTable, Filter filter);

其中"selectFields“是从"joinTable”返回的字段,"joinTable“是包含复合表的外键的applications表,filter是包含"where子句”的自定义类,例如将字段名映射到条件(>,<,like,= ...)和一个值。

这是否合理呢?更好的点子?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-15 00:32:19

答案是有一个合适的域模型,然后你就可以使用QueryDSL了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12670571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档