Frage

Ich muss alle benannten Abfragen in einer separaten Datei aufbewahren.Zum Beispiel

@javax.persistence.NamedQueries({
    @NamedQuery(name = "Employee.findAll", query = "SELECT e FROM Employee e")})

public class AllNamedQueries {

}

Nun, so viel an sich führt zu einem Fehler „Benannte Abfragen können nur in der Entity- oder MappedSuperClass-Klasse definiert werden“.

Wie erstelle ich benannte Abfragen in einer separaten Datei?Mit „separat“ meine ich andere Dateien als die Entitätsdatei.

War es hilfreich?

Lösung

Sie können verwenden orm.xml Damit können Sie JPA-Zuordnungen in XML definieren.Dieser Ansatz ist gleichwertig und überschreibt Anmerkungen.

Beispiel basierend auf Definieren Sie eine benannte Abfrage in orm.xml mit JPA und Ruhezustand:

<entity class="com.example.Employee">
    <table name="Employee.findAll" />
    <named-query name="findAll">
        <query><![CDATA[
          SELECT e
          FROM Employee e
        ]]></query>
    </named-query>
</entity>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top