Is Quaere truly LINQ for Java?

Is Quaere truly LINQ for Java?

Posted on September 25, 2007 0 Comments

The LINQ for Java question hit another milestone last week with the arrival of Quaere, although it remains to be seen whether this milestone is significant or not. We've certainly registered some false starts in this space which rightly have been seen as more marketechture than a true innovations on the Java platform.

Lets review some of the feature highlights...

  • Ability to perform queries against arrays or data structure implementing the Iterable interface.
  • An internal DSL (based on static imports and fluent interfaces) that lets you integrate the query language with
  • regular Java code. No preprocessing or code generation steps are required to use the DSL, simply add a reference to the quaere.jar file (and its dependencies).
  • A large number of querying operators including restriction, selection, projection, set, partitioning, grouping, ordering, quantification, aggregation and conversion operators.
  • Support for lambda expression
  • The ability to dynamically define and instantiate anonymous classes.
  • Many new “keywords” for Java 1.5 and later.

Compared to JLINQ discussed here, this seems like we have a lot more meat similar to what is currently being offered in LINQ on the .NET Framework. Certainly the readers of seem to feel it has merit, but no one seems to have asked the question: is LINQ on the Java platform actually a necessary innovation? Are there legions of Java programmers who are struggling with data access patterns that don't serve their needs ?

've talked about LINQ on number of posts; for the .NET community LINQ represents a quantum leap that changing the way developers search, sort and generally perform data access. Sure LINQ is not perfect, but it brings to bear many of the things Java developers have enjoyed for many years. One has only to examine the plethora of JDBC driver implementations and gauge the respect the JDBC specifications as the solid foundation for the success of Hibernate, the Spring Framework and many more. With the advent of JPA, I see the problem LINQ seeks to solve is even less acute in Java.

Don't get me wrong, while the effort underway with Quaere is admirable it could just all be an academic exercise. I am of course open to debate on that score...

Jonathan Bruce

View all posts from Jonathan Bruce on the Progress blog. Connect with us about all things application development and deployment, data integration and digital business.


Comments are disabled in preview mode.

Sitefinity Training and Certification Now Available.

Let our experts teach you how to use Sitefinity's best-in-class features to deliver compelling digital experiences.

Learn More
Latest Stories
in Your Inbox

Subscribe to get all the news, info and tutorials you need to build better business apps and sites

Loading animation