Hello having separate persistence model and domain model agnostic of persistence is a common pattern. I would like to understand how is this pattern addressed in Spring Data.

The way I imagine it, if we were using regular hibernate without spring data, is that we will have repositories that will work with domain objects that will be internaly mapped to the ORM model and then the persistence will be triggered.

How can this be achieved using Spring Data and if it is not achievable what alternative mechanisms can be used in such way that we have Domain model that is agnostic of the persistence? Thanks.