Ich habe eine Spring Data JPA-Repository mit einer benutzerdefinierten Methode:Ändern Argumentwert mit dem Spring Data JPA Repository
@Repository
public interface EntityRepository extends PagingAndSortingRepository<Entity, Long> {
List<Entity> findByNameIgnoreCase(String name);
}
Und ich möchte irgendwie ändern die name
(zB entkommen der %
und _
finden https://jira.spring.io/browse/DATAJPA-216) Wert vor Aufruf der Methode.
Meine vorgeschlagene Lösung bestand darin, eine CustomString
und eine Converter<CustomString, String>
mit der erforderlichen Geschäftslogik darin zu erstellen. Aber selbst wenn ich die Signatur auf findByNameIgnoreCase(CustomString name)
ändere, wird die converter
nicht verwendet und das Original CustomString
wird an die SimpleJpaRepository
übergeben.
Gibt es einen anderen Weg, wie das zu tun, ohne extra Services
erstellen und den repository
Aufruf umhüllen?
Ja, das ist definitiv möglich :). Ich war nur neugierig, ob es eine transparentere Möglichkeit gibt, das zu tun, und ich war überrascht, dass der Konverter nicht funktioniert hat :). – vlastikcz