-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support QueryDSL in Panache #4016
Comments
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you! |
Optional predicates #2303 and type safe HQL might be a good replacement for QueryDSL. We looked at QueryDSL but it does not seem to be maintained anymore, that's why we hesitated to invest in it. If you can be a bit patient, let's see if the solution ^ solves your problems. Or you can try and contribute QueryDSL to Quarkus. |
querydsl/querydsl#2459 (comment) Personally, my benefit from Querydsl was build-time query checking and IDE code completion. I used it as a plugin for Spring Data (example here https://www.logicbig.com/tutorials/spring-framework/spring-data/query-dsl-basic.html), and it was awesome. But Querydsl is not a must have, If some other instrument will give me the same benefits and will be easy to use, I will deffinitely go for it. Also, type-safe querries in Quarkus could be a good move in competition with Micronaut, since IMHO for now, they have better storage integration options. |
@FroMage I assume that with the latest improvements in Hibernate plus your work to integrate them in Quarkus, we can close this as |
Yes. |
Could you give me a link to the manual describing functionality of typesafe queries in Quarkus which makes Querydsl feature request obsolete? |
@geoand QueryDSL provides type safe API, it is good for IDE support and get the QL error at code time, but HQL we have to compile it(and even run it) and know where is wrong. |
These are checked at compile-time and will get you IDE errors, and even completion for some IDEs |
It does not provide type safe queries checked in compile time as I understand. Another big issue is that they are not composable. QueryDSL solves all these two problems. |
Well, the problem is that it's not clear if QueryDSL is still maintained. But there's nothing stoping anyone from writing a QueryDSL extension or support in Quarkiverse. That'd be awesome. We're not going in that direction for ORM/Panache, but that doesn't mean QueryDSL has no place in Quarkus, if you all want it, we'll help you build the extension. |
@FroMage QueryDSL has just released a new version this year, https://github.com/querydsl/querydsl/releases/tag/QUERYDSL_5_1_0 |
Ah, this was not reflected in their website. |
QueryDSL 5.1.0 from Jan 2024 does not support I have evaluated the project fork over at https://github.com/openfeign/querydsl which might address some on these matters, but I did not find it compelling to continue spending time on evaluating QueryDSL. Time to evaluate Panache. Hibernate used to have a useful and manageable Criteria API of its own but design by JPA committee seems to have struck that feature (it is now removed) and transformed it into the abomination it has become. So looking for a DSL so it never needs to be used directly by the programmer and regular kinds of queries need fewer lines of code. |
Personally I like QueryDSL/JOOQ like type safe API when assembling complex queries, JPA Criteria API is a little tedious. Panache uses literal text instead of type safe Java/Kotlin API, I do not like this approach, without IDE support, we have to determine the correctness of syntax by compiling/running the application. |
@dlmiles It seems https://github.com/OpenFeign/querydsl is updated to the latest spec/frameworks. |
QueryDSL is very popular in developer communities, as an alternative of JPA APIs, it is better to add it in Quarkus.
The text was updated successfully, but these errors were encountered: