JPA-Abfrage für Federdaten mit Parametereigenschaften
Was ist die einfachste Methode zum Deklarieren einer JPA-Abfrage für Spring-Daten, bei der die Eigenschaften eines Eingabeparameters als Abfrageparameter verwendet werden?
Angenommen, ich habe eine Entitätsklasse:
public class Person {
@Id
private long id;
@Column
private String forename;
@Column
private String surname;
}
und eine andere Klasse:
public class Name {
private String forename;
private String surname;
[constructor and getters]
}
... dann möchte ich ein Spring-Daten-Repository wie folgt schreiben:
public interface PersonRepository extends CrudRepository<Person, Long> {
@Query("select p from Person p where p.forename = ?1.forename and p.surname = ?1.surname")
findByName(Name name);
}
... aber Spring data / JPA mag es nicht, wenn ich Eigenschaftsnamen in der?1
Parameter.
Was ist die schönste Alternative? }