Spring Query +Thymeleaf

Dimax

Top Contributor
Guten Tag , ich habe folgendes Repository
Java:
@Repository
public interface MacroDatenRepository extends CrudRepository<MacroDaten, Long>{

    @Query("SELECT SUM(CASE WHEN fm>0.85 THEN 1 ELSE 0 END) AS hoheKomplex,"+
            "SUM(CASE WHEN fm BETWEEN 0.35 AND 0.85 THEN 1 ELSE 0 END) AS mittlereKomplex,"+
            "SUM(CASE WHEN fm<0.35 THEN 1 ELSE 0 END) AS geringeKomplex FROM MacroDaten")
    public List <Integer> getFm();
Die Funktion lifert mir folgende Tabelle
Unbenannt1.png
Folgende html code zeigt mir aber nur die erste Zahl:

Code:
<table >
<tr th:each="el:${fm}"><td th:text="${el}"></td></tr>
Frage: was machen um alle 3 zu zeigen?
 
Frage: was machen um alle 3 zu zeigen?
Den richtigen Code schreiben. Nein ernsthaft, wie soll man denn mit der Fehlerbeschreibung irgendwas sinnvolles sagen können?


getFm sieht potentiell falsch aus, eine Liste als Rückgabetyp dürfte dort ziemlich sicher Unsinn sein. Listen-Elemente entsprechen Zeilen, deine Query liefert aber nur eine Zeile, könnte also daran liegen. Schreib einfach mal einen Test dafür, damit sollte man den Fehler finden können.
 
Also danke Jungs, hab´s geschafft. Oneixee5 hat mir auch darüber geschrieben .Ich habe ihn einfach nicht verstanden.
Jetzt sieht so aus:
Java:
@Repository
public interface MacroDatenRepository extends CrudRepository<MacroDaten, Long>{
    interface MacroDatenResult {
        Integer getHoheKomplex();
        Integer getMittlereKomplex();
        Integer getGeringeKomplex();
    }

    @Query("SELECT SUM(CASE WHEN fm>0.85 THEN 1 ELSE 0 END) AS hoheKomplex,"+
            "SUM(CASE WHEN fm BETWEEN 0.35 AND 0.85 THEN 1 ELSE 0 END) AS mittlereKomplex,"+
            "SUM(CASE WHEN fm<0.35 THEN 1 ELSE 0 END) AS geringeKomplex FROM MacroDaten")
    public MacroDatenResult getFm();
und im View
Code:
<table >
<tr th:each="el:${fm}"><td th:text="${el.getHoheKomplex}"></td>
                                     <td th:text="${el.getMittlereKomplex}"></td>
                                      <td th:text="${el.getGeringeKomplex}"></td>
</tr>
 

Neue Themen


Zurück
Oben