Stream-based querying

Description

Despite how crazy this idea sounds, there is an existing project that was the inspiration behind this: Linq Method Query Syntax

The idea would be simple on the API level, define the set of methods i.e.:

  • where

  • join

  • select

  • groupBy

  • orderBy

That would take a Predicate as parameter (or other suitable functional interface) allowing to construct queries in a form:

While this clearly introduces completly new syntax for creating queries next to existing HQL, criteria API and QBE it might be wort considering it.

The implementation definetly won't be trivial, but probably can be based on already widely used ASM that would have to be used to do the reverse enginering of the lambda statements.

Activity

Show:

Steve Ebersole May 27, 2022 at 7:30 PM

Unscheduled as no one has stepped up to work on this.

Steve Ebersole August 29, 2017 at 12:18 PM

Giovanni, that would be awesome. It would have to live on top of 6.x
codebase which is unfortunately not yet compiling.

On Tue, Aug 29, 2017, 3:32 AM Giovanni Lovato (JIRA) <

Giovanni Lovato August 29, 2017 at 8:31 AM

This is very interesting. I'm working on implementations of Java 8 Stream, Predicate, Function,
Comparator and Collector which translates to Criteria API. That is:

I'd love to see this in ORM, and I'd love to share and contribute if of any interest!

Steve Ebersole January 27, 2017 at 12:08 PM

Also this is not so much "lambda queries". It is stream-based querying.

Steve Ebersole May 13, 2016 at 12:18 PM

Tentatively scheduled for 6.0. It will definitely have to wait for 6.x

Details

Assignee

Reporter

Labels

Priority

Created August 15, 2014 at 8:29 PM
Updated April 5, 2024 at 1:31 PM