Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.0 M2
    • Component/s: Core
    • Labels:
      None

      Description

      The QueryDSL library offers a fluent interface for building type safe (JPA) queries. The API looks a lot smoother than the JPA Criteria API so that an integration would be quite a cool thing. I can imagine collaboration in the following areas:

      Offer Specifications based on QueryDSL

      We could offer an alternative to the standard JPA Criteria API based Specifications as the implementations should become much nicer with Querydsl. So we could have something like this:

      public interface QueryDslSpecificationExecutor<T> {
      
        T findAll(QueryDslSpecification<T>);
      
        // further Specification executing methods like in JpaRepository
      }
      

      We could create a QueryDsl specific subclass of SimpleJpaRepository and use this subclass in case the entity specific repository interface implements this 'mixin' so to speak.

      Provide a simple base class for custom query implementations

      To ease building queries with QueryDsl we could provide a base class that gets an EntityManager injected and allows to create queries via a helper method. This class could be used for custom repository implementations then.

      Links

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                olivergierke Oliver Gierke
                Reporter:
                olivergierke Oliver Gierke
                Last updater:
                Trevor Marshall
              • Votes:
                6 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 0.5d
                  0.5d
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 0.5d
                  0.5d