Erstellen Sie während der API -Anruf eine benutzerdefinierte CRUD -Abfrage -Zeitüberschreitung
Posted: 07 Apr 2025, 20:23
Ich lerne, APIs mit crudrepository zu erstellen. Benutzer.
Ich versuche, den SQL -Code auszuführen und in eine Liste zu bringen, die ich dann wiederholen und meine Aufgabe erledigen kann. ALT = "Bildbeschreibung hier eingeben" src = "https://i.static.net/5luqp0ho.png"/>
Code: Select all
@Repository
public interface MoodRepository extends CrudRepository {
@Query("""
SELECT DISTINCT u.name, u.userName, m.mood, s.stress, m.date as MOOD_DATE, s.date AS STRESS_DATE FROM User u JOIN Mood m ON u.id = m.userId JOIN Stress s ON u.id = s.userId""")
List badDayReport();
}
< /code>
Ich kann die App erstellen und starten, aber wenn ich auf die API klicke, erhalte ich Folgendes in Konsole: < /p>
Hibernate: Wählen />u1_0.name ,u1_0.user_name,m1_0.mood,s1_0.stress,m1_0.date,s1_0.date
Von den Benutzern u1_0 Join -Stimmungsstimmungen M1_0 auf u1_0.id = m1_0.user_id join
S1_0 auf u1_0.id = s1_0.user_id < /p>
< /blockquote>
Postman läuft nie ab.@Getter
@Setter
@NoArgsConstructor
public class BadDayResponse implements Serializable {
private Date moodDate;
private Date stressDate;
private String name;
private String userName;
private int mood;
private int stress;
BadDayResponse(String name, String userName, int mood, int stress, Date moodDate, Date stressDate) {
this.name = name;
this.userName = userName;
this.mood = mood;
this.stress = stress;
this.moodDate = moodDate;
this.stressDate = stressDate;
}
}