SpringDataJPA: benutzerdefinierte Daten-mapping mit Native Query
public interface UserRepository extends JpaRepository<User, Long> {
@Query(value = "SELECT * FROM USERS WHERE EMAIL_ADDRESS = ?0", nativeQuery = true)
User findByEmailAddress(String emailAddress);
}
Sagen wir mal ich hab den code oben, wo ich select * from user. Was soll ich tun, wenn ich nicht wollen, dass diese Methode zum zurückgeben von Benutzer-Objekt. Gibt es eine Möglichkeit, ich kann manuell die Zuordnung der Daten zu einem benutzerdefinierten Objekt MyUser? Kann ich tun, all dies in der UserRepository-Schnittstelle?
Dank!
Sie konfigurieren, Spring Security-richtig? Sie brauchen nicht zu verlängern JPARepsoitory können Sie Ihre super-Typ aus und erstellen Sie ein repository, verwendet raw-JDBC-oder was auch immer. Mit JPARepository Frühjahr weiß, wie man die JPA-Persistenz. Wenn Sie raw-JDBC-würden Sie konfigurieren müssen Ihre Bohne mit der db-Verbindung. Wenn Sie wissen, JPA dann sicher, dass Sie konfigurieren können, JPA, Karte Abfragen in Wert von Objekten oder anzeigen einer benutzerdefinierten Entität-Klasse Hierarchie eine Gruppe von Tabellen, der Frühling ist alles über das konfigurieren von Objekten und Schnittstellen verwenden, die Sie gerade implementieren die Schnittstellen und Federdraht Sie.
InformationsquelleAutor topcan5 | 2015-11-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie so etwas tun
Müssen Sie die Zuordnung. Werfen Sie einen Blick auf die Spring-Data-Repository. Quelle
InformationsquelleAutor Rossi Robinsion
Was über die Schnittstelle basiert Projektion?
Im Grunde Sie schreiben-Schnittstelle mit Getter, die entsprechen zu den SQL-Abfrage-Parameter.
In dieser Art und Weise, die Sie selbst brauchen nicht zu zwingen
@Id
parameter auf Projektion:Es nutzt
org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap
unter als proxy für die Schnittstelle in der aktuellen Frühjahr-Implementierung.Funktioniert es für
nativeQuery = true
zu.InformationsquelleAutor gavenkoa