Query mit Schleife durchlaufen

dschuebel

Mitglied
Hallo zusammen,
ich hoffe ich bin hier richtig.
Ich habe eine Query erstellt und möchte diese gerne per Schleife durchlaufen und für alle Ergebnisse der Query in meiner Datenbank einen Wert ändern. Aktuell schaut es so aus:

Meine Methode für die Query:
Code:
    @Produces
    @Named
    public List<Bewerbung> getZbFBewerberAnnehmen()  {
       
        TypedQuery<Bewerbung> qu = em.createNamedQuery("Bewerbung.findeZbfBewerber", Bewerbung.class);
       
        ZbF id = zec.getNeuezbF();
        anzahl = zec.getNeuezbF().getMaxBelegung();
        qu.setParameter("id", id);
       
        List<Bewerbung> x= qu.setMaxResults(anzahl).getResultList();
       
        return x;
    }

Meine Methode für das durchlaufen:
Code:
    public String bewerberZulassen(Bewerbung bew) {
   
        bst = bewm.getZbFBewerberAnnehmen();
   
        for(Bewerbung b : bst ){
           
            zva = new Bewerbung();
            zva = bew;
            zva.setOffen(false);
            zva.setZulassung(true);
           
            bewm.updaten(zva);           
        }

        return "/Dozent/zbF_edit_freigegeben.xhtml";
    }

Ich hoffe ihr könnt mir helfen :(

LG
DS
 

stg

Top Contributor
Und was funktioniert nicht? Sollen wir das jetzt raten?

Code:
        for(Bewerbung b : bst ){           
            zva = new Bewerbung();
            zva = bew;
            //...

Der Teil sieht jedenfalls sehr krumm aus..
 

SeriousD0nkey

Bekanntes Mitglied
Wenn du alle Datensätze die du durch die Query bekommst verändern willst, dann lass, wie Thallius bereits schrieb, dass die Datenbank machen und gehe nicht den Umweg die Datensätze einzeln in Java zu verändern.

Und wenn du es dennoch (aus welchem Grund auch immer) in Java machen willst, dann musst du schon genauer beschreiben, was das Problem ist.
 

Ähnliche Java Themen

Neue Themen


Oben