Skip to content
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

Roadmap of FluentJdbc #72

Open
sachin-walia opened this issue Aug 23, 2019 · 3 comments
Open

Roadmap of FluentJdbc #72

sachin-walia opened this issue Aug 23, 2019 · 3 comments

Comments

@sachin-walia
Copy link
Contributor

@zsoltherpai thanks for building this awesome library. In my organization we are using this for multiple extremely high scale services (few of them are handling 4K rps and over). It performs very well. I am curious if you have any roadmap planned for future improvements. Some of the minor things that I can think of:
-- Better exception reporting (sometime on failure I only get an error that some query failed to execute)
-- Compatibility with JDK 11 (meaning built on JDK 11 and not on JDK 8 anymore)
-- metrics reporting through micrometer

@zsoltherpai
Copy link
Owner

zsoltherpai commented Aug 23, 2019

Glad you find the lib useful. There is no long term roadmap for it.. Features are being added on demand on short notice - if they solve real problems and aligned with the library.

Feel free to create issues / feature requests.

About the things you mentioned specifically:

  • exception handling: the intention is to always include the query that triggered the error in the message, and include the underlying SQLException (if any) in the cause. Please let me know if there are scenarios where information is swallowed.
  • JDK: the latest release (1.8.4) is built by JDK11. Target version is still version 8 for max compatibility.
  • metrics: the lib has some very crude functionality, imo it was a mistake to add it that way. Even if made properly, some metrics are bound to be app-specific. I think the best way to do this would be a proper interceptor API. Adding some micrometer statements would be trivial then, and the interceptors can be used for a number of other things. This specific change is actually planned.

@stevesobol
Copy link

I must say, @zsoltherpai, I am coming from Hibernate and JOOQ (and NHibernate and Entity Framework on the .NET side) and... WOW.

The awesome thing about Hibernate is that it literally does everything.

The biggest problem with Hibernate is that it literally does everything. I don't need all of that bloat.

Your library strikes a very good balance between plain JDBC and big ORM frameworks that have lots of features I simply do not need.

Now, one of the things I would like to see is the ability to persist POJOs like this:

MyObject o = new MyObject();
o.setField1("I love FluentJdbc");
o.setOtherField(123);
o.saveOrUpdate();

A way to execute basic CRUD operations without writing SQL would be awesome.

I am actually working on a small framework that sits on top of FluentJdbc that does exactly this. Maybe I'll release it as a separate library that has FluentJdbc as a dependency. Or maybe you'd like a pull request?

Thank you for your work. I already love FluentJdbc, and I'm just starting to use it in production now.

@strogiyotec
Copy link

@stevesobol the main purpose of this project is to avoid ORM frameworks, if you need automatic sql generation then you should use any JPA framework

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants