public interface JpaDaoAPI
Modifier and Type | Method and Description |
---|---|
String |
buildConnectionPath(String appPath)
Retourne le chemin absolu où se trouve la base de données.
|
Properties |
buildConnectionProperties(String dbDriver,
String dbUrl,
String dbUser,
String dbPwd)
Crée un objet avec les propriétés de la connexion.
|
void |
clear()
Supprime tout objet encore managé par JPA
(normalement, cette méthode ne devrait JAMAIS être appelée).
|
void |
clearCache()
Supprime le contenu du cache JPA
(normalement, cette méthode ne devrait JAMAIS être appelée).
|
void |
connect(String pu)
Connexion à une persistence unit JPA.
|
void |
connect(String pu,
Optional<Properties> props)
Connexion à une persistence unit JPA en surchargeant avec une série
de propriétés spécifiées.
|
long |
count(Class<?> cl)
Pour la classe-entité spécifiée, retourne le nombre total d'objets.
|
long |
count(Class<?> cl,
String attr,
Object value)
Pour la classe-entité spécifiée, retourne le nombre d'objets filtrés
d'après un seul critère fourni (propriété et valeur).
|
long |
count(Search search)
D'après la requête définie par un objet search, trouve le nombre
d'éléments.
|
<E> int |
create(E e)
Ajoute un objet dans la persistance.
|
int |
delete(Class<?> cl,
Object pk)
Pour la classe-entité spécifiée, supprime un objet de la persistance
d'après sa PK.
|
int |
deleteAll(Class<?> cl)
Pour la classe-entité spécifiée, efface tous les objets managés.
|
int |
deleteAll(String tenantName,
int tenantId,
String... tables)
Permet d'effacer le contenu global d'une liste de tables d'après
un tenant spécifié avec son nom et sa valeur.
|
<E> void |
detach(E e)
Détache un objet de la persistence JPA.
|
<E> void |
detachList(List<E> list)
Détache tous les objets managés par JPA (liste en entrée-sortie).
|
void |
disconnect()
Se déconnecte au besoin si un entity manager existe.
|
int |
executeCommand(String sql)
Exécute une commande SQL native, principalement pour une
mise à jour (insert/update) ou un effacement (delete).
|
int |
executeScript(String sqlScriptFileName,
Object... objects)
Exécute un script SQL contenu dans un fichier.
|
boolean |
exists(Class<?> cl,
Object pk)
Pour la classe-entité spécifiée, retourne VRAI si un objet existe
dans la persistance.
|
<E> List<E> |
getAggregateList(Search search)
Permet de récupérer une liste d'agrégats de données
composés de colonnes préchoisies de type Field.
|
<E> List<E> |
getAggregateList(Search2 search)
Permet de récupérer une liste d'agrégats de données
composés de colonnes préchoisies.
|
String |
getConnectionProperty(String prop)
Retourne une propriété de connexion mémorisée dans l'entity Manager Factory.
|
String |
getConnectionURL()
Retourne d'une manière simplifiée l'URL qui accède à une BD.
|
Map<Class<?>,EntityInfo> |
getEntitiesMap()
Permet de retourner une map avec la liste des classes-entités
gérées par l'EntityManager.
|
List<Field> |
getEntityFields(Class<?> cl)
Pour la classe-entité spécifiée, retourne par introspection une liste des
attributs présents dans cette classe.
|
EntityInfo |
getEntityInfo(Class<?> cl)
Pour la classe-entité spécifiée, récupère les informations suivantes :
classe, nom et type de la PK, table de séquence utilisée oui/non.
|
javax.persistence.EntityManager |
getEntityManager()
Retourne l'entityManager stocké dans la couche dao.
|
int |
getIntValue(Search search)
Retourne une valeur entière unique de type Integer grâce à une requête de type Search.
|
<E> List<E> |
getList(Class<?> cl,
String sortFields)
Pour la classe-entité spécifiée, récupère une liste d'objets triés.
|
<E> List<E> |
getList(Class<?> cl,
String attr,
Object value)
Pour la classe-entité spécifiée, récupère une liste d'objets filtrés
et non triés, ceci d'après un seul critère basé sur un attribut de la
classe et une valeur pour cet attribut.
|
<E> List<E> |
getList(Class<?> cl,
String attr,
Object value,
String sortFields)
Pour la classe-entité spécifiée, récupère une liste d'objets filtrés et
triés, ceci d'après un seul critère basé sur une propriété et sa valeur.
|
<E> List<E> |
getList(Search search)
Récupère une liste d'objets en fournissant un objet de type "Search"
qui permet de stocker tous les paramètres nécessaires pour une recherche ciblée :
- classe-entité; - choix des propriétés à récupérer (fields); - conditions de recherche (filters); - critères de tri (sorts); - limitation du nombre d'objets (maxResults) |
<E> List<E> |
getList(Search2 search)
Récupère une liste d'objets en fournissant un objet de type Search2.
|
<E> List<E> |
getList(String sql,
Object[] params)
Récupère une liste d'objets en effectuant une requête SQL native.
|
<E> List<E> |
getList(String sql,
Object[] params,
String rsMapping)
Récupère une liste d'objets en effectuant une requête SQL native.
|
long |
getLongValue(Search search)
Retourne une valeur entière unique de type Long grâce à une requête de type Search.
|
int |
getMaxIntValue(Class<?> cl,
String fieldName)
Pour la classe-entité spécifiée et un champ donné,
retourne la valeur entière maximale de ce champ.
|
int |
getMinIntValue(Class<?> cl,
String fieldName)
Pour la classe-entité spécifiée et un champ donné,
retourne la valeur entière minimale de ce champ.
|
Object |
getPkMax(Class<?> cl)
Pour la classe-entité spécifiée, retourne la valeur maximale de la PK
actuellement utilisée dans la table sous-jacente.
|
String |
getPkName(Class<?> cl)
Pour la classe-entité spécifiée, retourne le nom de la PK.
|
Type |
getPkType(Class<?> cl)
Pour la classe-entité spécifiée, retourne le type de la PK.
|
<E> E |
getSingleResult(Class<?> cl,
String attr,
Object value)
Retrouve un objet unique d'une classe-entité donnée avec un critère
de recherche basée sur une égalité d'un attribut de cette classe avec
une valeur spécifiée.
|
<E> E |
getSingleResult(Search search)
Retrouve un objet unique d'après un objet Search (spécification de critères
de recherche multiples).
|
<E> E |
getSingleResult(String jpql,
Object[] params)
Méthode de plus bas niveau pour retrouver un objet unique
d'après une requête jqpl et un tableau de valeurs paramètres
|
Transaction |
getTransaction()
Retourne un objet représentant l'état d'une transaction actuelle
sur l'entity manager.
|
String |
getVersion()
Retourne la version courante de l'implémentation JpaDao.
|
<E> int |
insertList(Class<?> cl,
List<E> list,
boolean resetPk)
Pour la classe-entité spécifiée, insert une liste globale d'objets.
|
boolean |
isConnected()
Détermine si une connexion existe avec un entity-manager valide.
|
<E> boolean |
isMerged(E e)
Retourne TRUE si l'objet passé en paramètre est managé par JPA.
|
<E> boolean |
isMerged(List<E> list)
Retourne TRUE si le premier élément d'une liste d'objets est managé par JPA
(sous-entendu les autres objets aussi).
|
<E> void |
merge(E e)
Manage à nouveau par JPA un objet détaché.
|
<E> E |
read(Class<?> cl,
Object pk,
boolean refresh,
boolean detach)
Pour la classe-entité spécifiée, lit un objet d'après sa PK.
|
<E> void |
refresh(E e)
Rafraîchit toute donnée (dont les listes 1..N stockées) dans un
entity-bean.
|
<E> void |
refreshList(List<E> list)
Rafraichit tous les objets d'une liste d'objets managés par JPA.
|
void |
setEntityManager(javax.persistence.EntityManager em)
Mémorise l'entity manager provenant d'une couche supérieure.
|
<E> int |
update(E e)
Modifie un objet dans la persistance.
|
<E> int[] |
updateList(Class<?> cl,
List<E> list)
Pour la classe-entité spécifiée, met à jour une liste globale d'objets.
|
String getVersion()
void connect(String pu, Optional<Properties> props) throws JpaException
pu
- un nom d'unité de persistenceprops
- des propriétés sous la forme clé-valeur (optionnel)JpaException
- une exception à traiter en cas d'erreurvoid connect(String pu) throws JpaException
pu
- un nom d'unité de persistenceJpaException
- une exception à traiter en cas d'erreurboolean isConnected()
void disconnect()
Properties buildConnectionProperties(String dbDriver, String dbUrl, String dbUser, String dbPwd)
dbDriver
- pilote JDBCdbUrl
- URL vers la base de donnéesdbUser
- nom d'utlisateur de la base de donnéesdbPwd
- mot de passe pour accéder à la baseString buildConnectionPath(String appPath)
appPath
- le chemin vers l'application appelanteString getConnectionProperty(String prop)
prop
- le nom de la propriété à extraireString getConnectionURL()
javax.persistence.EntityManager getEntityManager()
void setEntityManager(javax.persistence.EntityManager em)
em
- un objet EntityManager normalement ouvert !Transaction getTransaction()
<E> int create(E e)
E
- une classe-entité génériquee
- l'objet à ajouter<E> E read(Class<?> cl, Object pk, boolean refresh, boolean detach)
E
- une classe-entité génériquecl
- une classe entité managée par JPApk
- une pk pour identifier l'objet à lirerefresh
- TRUE pour rafraichir l'objet après la lecturedetach
- TRUE pour rendre l'objet détaché après la lecture<E> int update(E e)
E
- une classe-entité génériquee
- l'objet à modifierint delete(Class<?> cl, Object pk)
cl
- une classe entité managée par JPApk
- une pk pour identifier l'objet à supprimerboolean exists(Class<?> cl, Object pk)
cl
- une classe entité managée par JPApk
- une pk pour identifier l'objet<E> E getSingleResult(String jpql, Object[] params)
E
- une classe-entité génériquejpql
- une requête jpql déjà préparée, manque juste les paramètresparams
- un tableau de valeurs pour les paramètres de la requête<E> E getSingleResult(Class<?> cl, String attr, Object value)
E
- une classe-entité génériquecl
- une classe entité managée par JPAattr
- un nom d'attribut de la classe comme critère de recherchevalue
- une valeur pour le critère de recherche<E> E getSingleResult(Search search)
E
- une classe-entité génériquesearch
- un objet pour spécifier les critères de la recherche<E> List<E> getList(Class<?> cl, String sortFields)
E
- une classe-entité génériquecl
- une classe entité managée par JPAsortFields
- les noms des propriétés de tri (séparés par des virgules)<E> List<E> getList(Class<?> cl, String attr, Object value, String sortFields)
E
- une classe-entité génériquecl
- une classe entité managée par JPAattr
- un nom d'attribut comme critère de filtragevalue
- une valeur pour le critère de filtragesortFields
- une liste des attributs de tri<E> List<E> getList(Class<?> cl, String attr, Object value)
E
- une classe-entité génériquecl
- une classe entité managée par JPAattr
- un nom d'attribut comme critère de filtragevalue
- une valeur pour le critère de filtrage<E> List<E> getList(Search search)
E
- une classe-entité génériquesearch
- un objet pour spécifier les critères de la recherche<E> List<E> getList(Search2 search)
E
- une classe-entité génériquesearch
- un objet pour spécifier les critères de la recherche<E> List<E> getList(String sql, Object[] params, String rsMapping)
E
- une classe-entité génériquesql
- une requête SQL nativeparams
- un tableau de paramètres pour satisfaire la requêtersMapping
- un mapping pour le résultat<E> List<E> getList(String sql, Object[] params)
E
- une classe-entité génériquesql
- une requête SQL nativeparams
- un tableau de paramètres pour satisfaire la requête<E> List<E> getAggregateList(Search search)
E
- une classe-entité génériquesearch
- un objet de recherche.<E> List<E> getAggregateList(Search2 search)
E
- une classe-entité génériquesearch
- un objet Search2 pour spécifier les critères de la rechercheint executeCommand(String sql)
sql
- la requête SQL nativeint executeScript(String sqlScriptFileName, Object... objects)
sqlScriptFileName
- un nom de fichier script avec des commandes sqlobjects
- tableau facultatif avec 2 objets (nom des BD)int deleteAll(Class<?> cl)
cl
- une classe entité managée par JPAint deleteAll(String tenantName, int tenantId, String... tables)
tenantName
- le nom d'un tenanttenantId
- l'id de ce tenant (une pk)tables
- une liste des tables-entités à effacer<E> int insertList(Class<?> cl, List<E> list, boolean resetPk)
E
- une classe-entité génériquecl
- une classe entité managée par JPAlist
- une liste d'objets à insérer dans la persistanceresetPk
- TRUE s'il faut reconstruire les PK<E> int[] updateList(Class<?> cl, List<E> list)
E
- une classe-entité génériquecl
- une classe entité managée par JPAlist
- une liste d'objets à modifier (ou à ajouter) dans la persistance<E> void detachList(List<E> list)
E
- une classe-entité génériquelist
- une liste d'objets managés par JPA, puis non managés<E> void refreshList(List<E> list)
E
- une classe-entité génériquelist
- une liste d'objets managés par JPAint getIntValue(Search search)
search
- un objet permettant le filtrage et le tri des donnéeslong getLongValue(Search search)
search
- un objet permettant le filtrage et le tri des donnéeslong count(Class<?> cl)
cl
- une classe entité managée par JPAlong count(Class<?> cl, String attr, Object value)
cl
- une classe entité managée par JPAattr
- un nom d'attribut comme critère de filtragevalue
- une valeur de filtrage pour cet attributlong count(Search search)
search
- un objet permettant le filtrage et le tri des donnéesint getMinIntValue(Class<?> cl, String fieldName)
cl
- une classe entité managée par JPAfieldName
- le nom du champ où récupérer la valeurint getMaxIntValue(Class<?> cl, String fieldName)
cl
- une classe entité managée par JPAfieldName
- le nom du champ où récupérer la valeurvoid clearCache()
void clear()
<E> void refresh(E e)
E
- une classe-entité génériquee
- l'objet à rafraîchir<E> void detach(E e)
E
- une classe-entité génériquee
- un objet managé par JPA qu'il faut détacher<E> void merge(E e)
E
- une classe-entité génériquee
- un objet détaché qu'il faut à nouveau manager avec JPA<E> boolean isMerged(E e)
E
- une classe-entité génériquee
- un objet d'une certaine classe-entité<E> boolean isMerged(List<E> list)
E
- une classe-entité génériquelist
- une liste d'objets d'une certaine classe-entitéString getPkName(Class<?> cl)
cl
- une classe-entité à introspecterType getPkType(Class<?> cl)
cl
- une classe-entité à introspecterObject getPkMax(Class<?> cl)
cl
- une classe entité managée par JPAEntityInfo getEntityInfo(Class<?> cl)
cl
- une classe-entité à introspecterList<Field> getEntityFields(Class<?> cl)
cl
- une classe-entité à introspecterMap<Class<?>,EntityInfo> getEntitiesMap()
Copyright © 2025. All rights reserved.