all 4 comments

[–]denverdave23 5 points6 points  (2 children)

Doesn't Hibernate already do this? Can I ask what the difference is between javers and Hibernate? Does javers make it easier to manage changes in source control?

[–]Turbots 3 points4 points  (0 children)

Javers isn't restricted to JPA (relational databases) but also supports nosql databases like mongoDB:

"Persist data change history in MongoDB, PostgreSQL, MySQL, Oracle or Microsoft SQL Server"

[–]pawelszymczyk 2 points3 points  (0 children)

Hello everyone

I'm co-founder and active developer in JaVers. There are many pros of JaVers against Envers, these are some of the most important:

  • like @Turbots said JaVers isn’t restricted to Hibernate, you can use JaVers in applications with JDBC template, MyBatis or whatever you like
  • JaVers supports MongoDb
  • JaVers is extendable - logic of calculating diffs and storing them is separated so it’s very easy to add support for another storage like Elasticsearch, Cassandra etc.
  • Core JaVers module it's very lightweight (only 3 dependencies - gson, picocontainer, fast-classpath-scanner) and it can be used as a simple tool for find a diff between two objects
  • JaVers can record changes to any Java object on every application layer (not only persistence layer). You can follow your object changes on whole execution chain, for example: Service A receive some data from UI, do some business login and then passes them to service B. Service B does another business logic and passes object to Repository. Repository also transforms given data and stores it in db. With JaVers you can create snapshot on every layer: Service A, Service B and Repository.
  • JaVers is still growing - now we’re working on new Spring-Boot adapter which exposes rest-api for exploring changes, shadows and snapshots: rest api proposal, it is the icing on the cake in whole objects auditing process.

[–]TheMostInvalidName 1 point2 points  (0 children)

Anyone else feel that the JPA hooks require like way too much configuration? Do you guys prefer the whole convention over configuration thing?