当前位置: 首页 > 知识库问答 >
问题:

java对象查询(对java对象列表应用SQL逻辑)

汤枫涟
2023-03-14

要求用户可以在Employee对象中的任何文件中搜索,如Employee name如Sehwag和年龄>30或工资>100000,基于用户搜索我们必须显示筛选后的Employee列表。

由于性能问题,我们没有查询DB,我们希望在前面对缓存的java列表对象应用用户搜索条件

有没有api/框架/任何其他的解决方案,让我们可以查询java对象?

迭代Employee列表并在Employee对象上应用条件用户搜索条件,了解用户在300个字段中选择的搜索条件是一个挑战,为每个字段编写了大量的枚举映射逻辑和一些附加逻辑使其工作。在当前的需求下,它可能会起作用,但考虑使用api或框架或更好的方法来解决需求!

事先谢谢你的帮助。

共有1个答案

胡玉书
2023-03-14

首先。如果您不想或没有机会更改现有的解决方案,请查看QueryDSL。有一个querydsl-collection模块,完全符合您的需要。详情请访问http://www.querydsl.com/和http://www.querydsl.com/static/querydsl/latest/reference/html/ch02s08.html

但是,如果您有机会审查/重新构建解决方案,您应该考虑一些更适合于大容量查询的内容。我建议您更多地了解非SQL数据库(mongodb)或索引工具,如lucene或elasticsearch,后者在lucene之上添加了RESTFul层。

希望有帮助。

 类似资料:
  • 这是获得SQL结果集的一个非常常见的方法,因为一对多的关系······对于一个相当简单的结构执行冗余查询似乎是不必要的(而且可能是低效的)。是否有一种已建立的简单的方法将其解析为java对象?也就是说,我不想迭代ResultSet类并为每一行创建和设置一个新对象,而是要迭代集合并为每一个父行创建一个新对象,为每一个子行创建一个新对象。 例如,一种方法是按父主键对查询进行排序,然后仅当父id更改时才

  • 我有如下所示的XML: 我有一个ObjectList类,它如下所示: 和如下所示的对象类: 当我尝试使用以下代码将xml解封到and对象中时: 我得到以下错误: UnMarshalException:意外元素(URI:“”,本地:“ObjectList”)。需要的元素为<{}Object>、<{}ObjectList> 编辑:我刚刚注意到两个问题我将我的ObjectList对象的XmlRootEl

  • 问题内容: 如何转换这种查询。 使用QueryBuilders进行Java客户端查询 问题答案: 以下Java代码将生成您的查询 参数为: 参数为:

  • 问题内容: 我有一个可能具有或不具有相同属性值的对象的列表/集合。获得具有相同属性的对象的不同列表的最简单方法是什么?一种收集类型最适合此目的吗?例如,在C#中,我可以使用LINQ执行以下操作。 我最初的想法是使用lambdaj(链接文本),但似乎不支持此功能。 问题答案: 使用接口的实现(类T可能需要自定义方法,您可能必须自己实现)。通常,a 是开箱即用的:它使用和方法比较对象。对于简单的对象,

  • 我试图理解JVM的内存管理方案 考虑A、B两类 从主B B=新B(); 据我所知,类加载器将加载A、B,并分别创建2个对象。是否有任何其他对象将被创建? 另外,我问题的第二部分是,在访问Java Visual VM时,我看到Java NIO包的对象已经创建。有什么方法可以阻止JVM创建与我的项目无关的对象吗?

  • 我在这里做错了什么?