When will we have LINQ in Java?
What does Java have to offer?
Currently, I guess that QueryDSL would come closest to LINQ in the Java world. As can be seen here, it offers querying many backends using a single querying API. There are many other attempts of bringing LINQ-like API’s to the Java world, as the following Stack Overflow question shows:
http://stackoverflow.com/questions/1217228/what-is-the-java-equivalent-for-linq
Here’s another newcomer project by Julian Hyde, that I’ve recently discovered:
https://github.com/julianhyde/linq4j
He tried his luck on the lambda-dev mailing list, without any response so far. We’re all eagerly awaiting Java 8 and project lambda with its lambda expressions and extension methods. But when will we be able to catch up with Microsoft’s LINQ? After all, jOOQ, QueryDSL, linq4j are all “internal domain specific languages”, which are all limited by the expressivity of their host language (see my previous blog post about building domain specific languages in Java).
Java 9 maybe? We can only hope!
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)






Comments
Mario Guerrero replied on Sun, 2012/08/12 - 4:13pm
Hi,
I like http://code.google.com/p/lambdaj/
Mario Guerrero.
Lukas Eder replied on Mon, 2012/08/13 - 1:26am
in response to:
Mario Guerrero