2017-04-20 3 views
0

Kurze Frage, soll eine Bean/Instanz in javaEE (Wildfly, cdi) @RequestScoped sein, wenn sie Jpa-Abfragen innerhalb ausführt (nur auswählt) oder soll ich immer @stateless für jpa verwenden?CDI Bean mit ausführenden JPA-Abfragen

Antwort

0

Ich verstehe nicht den Punkt der Frage.

Wenn Sie eine Business-Schicht und die Möglichkeit haben, EJB zu verwenden, würde ich für eine @Stateless Geschäftslogik und JPA-Interaktion halten und eine bestimmte Business-Schnittstelle zum Client ausgesetzt.

Auf jeden Fall, wenn Sie nur sonst eine auswählen und nichts zu tun, vielleicht für Ihre Datentabelle auf der Vorderseite Ende Füllung, schlage ich Ihr Unternehmen Methode wie folgt zu beschriften:

@TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED) 
public List<MyEntity> findByWhateverCriteria(String param) { 
    // business logic 
} 

warum? Weil Sie Anwendungsserverressourcen speichern können.

Auf der anderen Seite ist ein @RequestScoped angebracht, wenn Sie aus dem gleichen Grund oben nur Daten am Frontend anzeigen und es vergessen müssen.

Verwandte Themen