Installation

Build Configuration

You can find the Spring-Data-Eclipse-Store libraries in the Maven Central repository.

Simply add the following dependency to your maven project

Maven [pom.xml]
<dependencies>
    <dependency>
       <groupId>software.xdev</groupId>
       <artifactId>spring-data-eclipse-store</artifactId>
       <version>2.2.0</version>
    </dependency>
</dependencies>

Configuration

After adding the library in your dependencies, using it is as easy as adding the @EnableEclipseStoreRepositories annotation to your @SpringBootApplication annotation.

Merge behavior

To merge data of the working copy into the original object graph, the library is using reflection. Therefore, the following JVM-Arguments may have to be set:

JVM Arguments
--add-opens=java.base/java.util=ALL-UNNAMED
--add-exports java.base/jdk.internal.misc=ALL-UNNAMED
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.time=ALL-UNNAMED

To access private variables, the library uses reflection and sets the access level to public (see FieldAccessibleMaker). For performance reasons, this change stays permanent during runtime.

Demo

To see how easy it is to implement EclipseStore in your Spring project, take a look at the demos:

Drop in compatible

After adding the dependency and the annotation you are ready to go. This makes this library drop in compatible for Spring-Data projects.