Vous êtes sur la page 1sur 2

❖ JDBC (Java Database Connectivity) ❖ Data Access Object

Qu'est-ce que JDBC ? : JDBC est une API Java standard C'est un modèle de conception (pattern) utilisé en
qui permet aux développeurs d'établir une programmation pour isoler l'accès aux données de

connexion et d'interagir avec différentes bases de la logique métier de l'application. Le but principal d'un
données relationnelles. DAO est de fournir une interface standardisée

❖ Fonctionnalités de JDBC : pour interagir avec une source de données, qu'il


s'agisse d'une base de données, d'un fichier ou de
• Établissement de la connexion à la base de données
à l'aide de DriverManager. tout autre mécanisme de stockage.

• Création et exécution de requêtes SQL (Insertion, ❖ Caractéristiques clés d'un DAO :


Sélection, Mise à jour, Suppression) à l'aide
- Abstraction de l'accès aux données - Interface
d'objets PreparedStatement et Statement. standardisée - Réutilisabilité et maintenabilité -
Encapsulation des détails d'accès aux données -
• Gestion des transactions via les objets Connection.
Gestion des transactions
• Gestion des exceptions et des erreurs lors de l'accès
JPA : Java Persistence API
à la base de données.
La Java Persistence API (JPA) est une spécification Java
❖ Étapes de base de l'utilisation de JDBC :
utilisée pour gérer la persistance des données
- Charger le pilote JDBC spécifique à la base de
dans les applications Java.
données. - Établir une connexion à la base de
données.- Créer et exécuter des requêtes SQL.- Concepts-clés de JPA:
Traiter les résultats et gérer les transactions.- Fermer
- Annotations JPA : Comme @Entity, @Table, @Id,
les connexions et les ressources une fois terminé
@GeneratedValue, etc., qui sont utilisées
Étapes pour utiliser JDBC avec JEE :
pour mapper les objets Java aux entités de la base de
1. Ajout des bibliothèques JDBC : données.

• Cliquez avec le bouton droit sur le projet, - Entités et Relations - EntityManager - Requêtes JPA
sélectionnez Properties. : - Cascade - Pagination et Tri - Auditing et
Timestamps - Héritage dans JPA - Optimistic Locking
• Dans Java Build Path, allez dans l'onglet Libraries.
et Versioning- Integration avec les frameworks
• Cliquez sur Add External JARs et ajoutez le pilote
Étapes pour utiliser JPA avec JEE :
JDBC spécifique à votre base de données (par
1. Configuration de l'unité de persistance :
exemple, mysql-connector-java-x.x.jar).
- Création du fichier persistence.xml : Dans le
2. Connexion à la base de données via JDBC
répertoire META-INF de votre projet, créez un
Écriture du code JDBC :
fichier persistence.xml.
Créez une classe Java pour gérer la connexion à la
- Configurez l'unité de persistance, y compris le nom
base de données et exécuter des requêtes
de l'unité, le fournisseur de persistance
SQL.
(par exemple, Hibernate, EclipseLink), la source de
3. Vérification de la connexion à la base de données données, etc.

Test de la connexion à la base de données : 2. Création d'une entité JPA :

Appelez les méthodes appropriées de - Créez une classe Java annotée avec @Entity : Cette
DatabaseManager dans vos servlets ou classes pour classe représente une entité de votre

établir la connexion à la base de données et récupérer modèle de données.


des données
- Utilisez des annotations telles que @Id, <fmt:message/> : Afficher des messages
@GeneratedValue, @Column, etc., pour mapper les
<fmt:param/> : Ajouter un paramètre au message
attributs aux colonnes de la base de données.
<fmt:requestEncoding/> : Encodage du client
3. Utilisation de l'EntityManager dans JEE :
<fmt:setTimeZone/> : Définir le fuseau horaire
- Injectez l'EntityManager : Dans votre composant JEE
<fmt:timeZone/> : Utiliser un Timezone
(servlet, etc.), injectez l'EntityManager
<fmt:parseDate/> : Analyser une date
pour gérer les opérations de persistance.
<fmt:formatDate/> : Formater une date

<fmt:parseNumber/> : Analyser un nombre


JSTL : Jakarta Standard Tag Library
<fmt:formatNumber/> : Formater un nombre
La JSTL permet de développer des pages JSP en
utilisant des balises XML, donc avec une syntaxe La librairie « sql »:
proche des langages utilisés par les web designers, et
leur permet donc de concevoir des pages dynamiques <sql:setDataSource/> : Définir le Datasource
complexes sans connaissances du langage Java. <sql:query/> : Exécuter une requête

<sql:transaction/> : Exécuter une commande SQL


❖ Librairie de base « core » <c:/> :
<sql:param/> : Définir un paramètre de la requête
<c:out/> : Afficher une expression : <sql:dateParam/> : Définir une date en paramètre de
<c:set/> : Définir une variable de scope ou une la requête
propriété : ❖ Librairie « xml » :
<c:remove/> : Supprimer une variable de scope : <x:parse/> : Analyser un XML
<c:catch/> : Intercepter les exceptions <x:out/> : Evaluer une expression
❖ Les conditions <x:set/> : Créer une variable de scope
<c:if/> : Traitement conditionnel <x:if/> : Action conditionnelle
<c:choose/> : Traitement conditionnel exclusif <x:choose/> : Traitement conditionnel exclusif
<c:when/> : Un cas du traitement conditionnel <x:when/> : Un cas du traitement conditionnel
<c:otherwise/> : Traitement par défaut <x:otherwise/> : Traitement par défaut
❖ Les itérations <x:forEach/> : Itérer sur le fichier XML
<c:forEach/> : Itérer sur une collection

<c:forTokens/> : Itérer sur des éléments d'une String ❖ Librairie des fonctions EL :
❖ Les URLs ${fn:join()} ${fn:contains()}
<c:param/> : Ajouter un paramètre à une URL ${fn:containsIgnoreCase()} ${fn:endsWith()}

<c:url/> : Créer une URL ${fn:escapeXml()} ${fn:indexOf()}


<c:redirect/> : Redirection ${fn:length()} ${fn:replace()}
<c:import/> : Importer des ressources ${fn:split()} ${fn:startsWith()}
❖ Librairie de formatage « fmt » : ${fn:substring()} ${fn:substringAfter()}
<fmt:setLocale/> : Définir la Locale ${fn:substringBefore()} ${fn:toLowerCase()}
<fmt:setBundle/> : Définir le ResourceBundle ${fn:toUpperCase()} ${fn:trim()}
<fmt:bundle/> : Définir un ResourceBundle partiel

Vous aimerez peut-être aussi