class CustomizedUserRepositoryImpl implements CustomizedUserRepository {
@Override
public void someCustomMethod(User user) {
// Your custom implementation
}
@ -32,15 +33,21 @@ class CustomizedUserRepositoryImpl implements CustomizedUserRepository {
@@ -32,15 +33,21 @@ class CustomizedUserRepositoryImpl implements CustomizedUserRepository {
[NOTE]
====
The most important part of the class name that corresponds to the fragment interface is the `Impl` postfix.
You can customize the store specific postfix by setting `@Enable<StoreModule>Repositories#repositoryImplementationPostfix`.
You can customize the store-specific postfix by setting `@Enable<StoreModule>Repositories(repositoryImplementationPostfix = …)`.
====
[WARNING]
====
Historically Spring Data custom repository behaviour followed a https://docs.spring.io/spring-data/commons/docs/1.9.0.RELEASE/reference/html/#repositories.single-repository-behaviour[different naming pattern] that is not recommended but still supported.
A type located in the same package as the repository interface, matching _repository interface name_ + _implementation postfix_, is considered a custom implementation and will be treated as such.
This can lead to unexpected failures. +
Please consider the old extension strategy deprecated, with the intention of removal in the next major version.
Historically, Spring Data custom repository implementation discovery followed a