MyBatis schlägt bei einer Eins-zu-viele-Beziehung mit TooManyResultsException fehl: Ein Ergebnis erwartet ... aber gefunJava

Java-Forum
Guest
 MyBatis schlägt bei einer Eins-zu-viele-Beziehung mit TooManyResultsException fehl: Ein Ergebnis erwartet ... aber gefun

Post by Guest »

Ich habe zwei Klassen, die im Moment sehr einfach sind:
class Club {

private int id;
private String name;
private Set
players;

}

class Player {

private int id;
private String firstName;
private String lastName;

}

Wie Sie sehen, kann jeder Verein eine Sammlung von Spielern haben – eine Eins-zu-viele-Beziehung.
Der XML-Code im Mapper lautet wie folgt:


select c.id as id, c.name as name,players.id as players_id, players.firstName as firstName, players.lastName as lastName from clubs c inner join players on c.id = players.club where c.name = #{name}









Der für den Anruf verwendete Code lautet:
Set
players = mapper.getPlayersByClubName("Testers United");
Der Mapper ist einfach eine Schnittstelle mit der Implementierung, die mit session.getMapper(ClubMapper.class) erhalten wurde
Dies führt zu Folgendem Fehler:

org.apache.ibatis.Exceptions.TooManyResultsException: Es wurde erwartet, dass ein Ergebnis (oder null) von selectOne() zurückgegeben wird, aber gefunden: 2< /p>

Außer der player_id stimmen alle Spaltennamen mit den Variablennamen in den Klassen überein. Ich muss zugeben, dass ich dachte, ich könnte dadurch mit einer einfacheren Zuordnung durchkommen, aber ich bekomme es so oder so nicht hin.
Ich habe eine Eins-zu-viele-Beziehung in MyBatis gefunden und auch dieses: MyBatis TooManyResultsException für scheinbar korrekte Zuordnung
und soweit ich es verstehen kann, mache ich nicht die gleichen Fehler wie in diesen Fällen – ich mache anscheinend ganz neue ...
Bitte geben Sie keine Antworten mit Anmerkungen – ich verwende definitiv XML in meiner Anwendung.
Vielen Dank im Voraus!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post