Ce chapitre suppose que vous possédez déjà une certaine compréhension de JDBC. Avant de commencer à apprendre l'accès aux bases de données JSP, veuillez vous assurer que l'environnement JDBC a été correctement configuré.
Tout d'abord, suivons les étapes ci-dessous pour créer un tableau simple et insérer quelques enregistrements simples :
Créez une table Employés dans la base de données. Les étapes sont les suivantes :
Ouvrez CMD et entrez le répertoire d'installation de la base de données :
C:>C:>cd Program FilesMySQLbinC:Program FilesMySQLbin>
C:Program FilesMySQLbin>mysql -u root -pEntrez le mot de passe : ********mysql>
Utilisez l'instruction create database pour créer une nouvelle base de données TEST :
mysql> créer une base de données TEST
Créez la table Employee dans la base de données TEST :
mysql> utiliser TEST;mysql> créer une table Employés (id int non nul, âge int non nul, premier varchar (255), dernier varchar (255));Requête OK, 0 ligne affectée (0,08 sec)mysql>
Après avoir créé la table Employee, insérez plusieurs enregistrements dans la table :
mysql> INSERT INTO Employees VALUES (100, 18, 'Zara', 'Ali'); Requête OK, 1 ligne affectée (0,05 sec) mysql> INSERT INTO Employees VALUES (101, 25, 'Mahnaz', 'Fatma'); Requête OK, 1 ligne affectée (0,00 sec) mysql> INSERT INTO Employees VALUES (102, 30, 'Zaid', 'Khan'); Requête OK, 1 ligne affectée (0,00 sec) mysql> INSERT INTO Employees VALUES (103, 28, 'Sumit', 'Mittal'); Requête OK, 1 ligne affectée (0,00 seconde) mysql>
L'exemple suivant nous montre comment utiliser les balises SQL JSTL pour exécuter des instructions SQL SELECT :
<%@
langue des pages
=
"Java"
Type de contenu
=
"texte/html; jeu de caractères=UTF-8"
pageEncodage
=
"UTF-8"
%>
<%@
page
importer
=
"java.io.*,java.util.*,java.sql.*"
%>
<%@
page
importer
=
"javax.servlet.http.*,javax.servlet.*"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/core"
préfixe
=
"c"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/sql"
préfixe
=
"sql"
%>
<html>
<tête>
<titre>
Opération SÉLECTIONNER
</titre>
</tête>
<corps>
<sql:setDataSource
var
=
"instantané"
conducteur
=
"com.mysql.jdbc.Driver"
URL
=
"jdbc:mysql://localhost:3306/TEST"
utilisateur
=
"racine"
mot de passe
=
"pass123"
/>
<sql: requête
Source de données
=
"${instantané}"
var
=
"résultat"
>
SELECT * parmi les employés ;
</sql:requête>
<tableau
frontière
=
"1"
largeur
=
"100%"
>
<tr>
<th>
ID Emp.
</th>
<th>
Prénom
</th>
<th>
Nom de famille
</th>
<th>
Âge
</th>
</tr>
<c:pourChacun
var
=
"rangée"
articles
=
"${result.rows}"
>
<tr>
<td><c:sortie
valeur
=
"${row.id}"
/></td>
<td><c:sortie
valeur
=
"${row.first}"
/></td>
<td><c:sortie
valeur
=
"${row.last}"
/></td>
<td><c:sortie
valeur
=
"${ligne.age}"
/></td>
</tr>
</c:forEach>
</table>
</corps>
</html>
Accédez à cet exemple JSP et les résultats sont les suivants :
Cet exemple nous montre comment utiliser les balises SQL JSTL pour exécuter des instructions SQL INSERT :
<%@
langue des pages
=
"Java"
Type de contenu
=
"texte/html; jeu de caractères=UTF-8"
pageEncodage
=
"UTF-8"
%>
<%@
page
importer
=
"java.io.*,java.util.*,java.sql.*"
%>
<%@
page
importer
=
"javax.servlet.http.*,javax.servlet.*"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/core"
préfixe
=
"c"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/sql"
préfixe
=
"sql"
%>
<html>
<tête>
<titre>
Opération INSÉRER
</titre>
</tête>
<corps>
<sql:setDataSource
var
=
"instantané"
conducteur
=
"com.mysql.jdbc.Driver"
URL
=
"jdbc:mysql://localhost/TEST"
utilisateur
=
"racine"
mot de passe
=
"pass123"
/>
<sql:mise à jour
Source de données
=
"${instantané}"
var
=
"résultat"
>
INSÉRER DANS LES VALEURS DES Employés (104, 2, 'Nuha', 'Ali');
</sql:mise à jour>
<sql: requête
Source de données
=
"${instantané}"
var
=
"résultat"
>
SELECT * parmi les employés ;
</sql:requête>
<tableau
frontière
=
"1"
largeur
=
"100%"
>
<tr>
<th>
ID Emp.
</th>
<th>
Prénom
</th>
<th>
Nom de famille
</th>
<th>
Âge
</th>
</tr>
<c:pourChacun
var
=
"rangée"
articles
=
"${result.rows}"
>
<tr>
<td><c:sortie
valeur
=
"${row.id}"
/></td>
<td><c:sortie
valeur
=
"${row.first}"
/></td>
<td><c:sortie
valeur
=
"${row.last}"
/></td>
<td><c:sortie
valeur
=
"${ligne.age}"
/></td>
</tr>
</c:forEach>
</table>
</corps>
</html>
Accédez à cet exemple JSP et les résultats sont les suivants :
Cet exemple nous montre comment utiliser les balises SQL JSTL pour exécuter des instructions SQL DELETE :
<%@
langue des pages
=
"Java"
Type de contenu
=
"texte/html; jeu de caractères=UTF-8"
pageEncodage
=
"UTF-8"
%>
<%@
page
importer
=
"java.io.*,java.util.*,java.sql.*"
%>
<%@
page
importer
=
"javax.servlet.http.*,javax.servlet.*"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/core"
préfixe
=
"c"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/sql"
préfixe
=
"sql"
%>
<html>
<tête>
<titre>
Opération SUPPRIMER
</titre>
</tête>
<corps>
<sql:setDataSource
var
=
"instantané"
conducteur
=
"com.mysql.jdbc.Driver"
URL
=
"jdbc:mysql://localhost/TEST"
utilisateur
=
"racine"
mot de passe
=
"pass123"
/>
<c:set
var
=
"ID emp"
valeur
=
"103"
/>
<sql:mise à jour
Source de données
=
"${instantané}"
var
=
"compter"
>
DELETE FROM Employés OÙ Id = ?
<sql:param
valeur
=
"${empId}"
/>
</sql:mise à jour>
<sql: requête
Source de données
=
"${instantané}"
var
=
"résultat"
>
SELECT * parmi les employés ;
</sql:requête>
<tableau
frontière
=
"1"
largeur
=
"100%"
>
<tr>
<th>
ID Emp.
</th>
<th>
Prénom
</th>
<th>
Nom de famille
</th>
<th>
Âge
</th>
</tr>
<c:pourChacun
var
=
"rangée"
articles
=
"${result.rows}"
>
<tr>
<td><c:sortie
valeur
=
"${row.id}"
/></td>
<td><c:sortie
valeur
=
"${row.first}"
/></td>
<td><c:sortie
valeur
=
"${row.last}"
/></td>
<td><c:sortie
valeur
=
"${ligne.age}"
/></td>
</tr>
</c:forEach>
</table>
</corps>
</html>
Accédez à cet exemple JSP et les résultats sont les suivants :
Cet exemple nous montre comment utiliser les balises SQL JSTL pour exécuter des instructions SQL UPDATE :
<%@
langue des pages
=
"Java"
Type de contenu
=
"texte/html; jeu de caractères=UTF-8"
pageEncodage
=
"UTF-8"
%>
<%@
page
importer
=
"java.io.*,java.util.*,java.sql.*"
%>
<%@
page
importer
=
"javax.servlet.http.*,javax.servlet.*"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/core"
préfixe
=
"c"
%>
<%@
taglib uri
=
"http://java.sun.com/jsp/jstl/sql"
préfixe
=
"sql"
%>
<html>
<tête>
<titre>
Opération MISE À JOUR
</titre>
</tête>
<corps>
<sql:setDataSource
var
=
"instantané"
conducteur
=
"com.mysql.jdbc.Driver"
URL
=
"jdbc:mysql://localhost/TEST"
utilisateur
=
"racine"
mot de passe
=
"pass123"
/>
<c:set
var
=
"ID emp"
valeur
=
"102"
/>
<sql:mise à jour
Source de données
=
"${instantané}"
var
=
"compter"
>
UPDATE Employés SET last = 'Ali' WHERE Id = ?
<sql:paramètre
valeur
=
"${empId}"
/>
</sql:mise à jour>
<sql: requête
Source de données
=
"${instantané}"
var
=
"résultat"
>
SELECT * parmi les employés ;
</sql:requête>
<tableau
frontière
=
"1"
largeur
=
"100%"
>
<tr>
<th>
ID Emp.
</th>
<th>
Prénom
</th>
<th>
Nom de famille
</th>
<th>
Âge
</th>
</tr>
<c:pourChacun
var
=
"rangée"
articles
=
"${result.rows}"
>
<tr>
<td><c:sortie
valeur
=
"${row.id}"
/></td>
<td><c:sortie
valeur
=
"${row.first}"
/></td>
<td><c:sortie
valeur
=
"${row.last}"
/></td>
<td><c:sortie
valeur
=
"${ligne.age}"
/></td>
</tr>
</c:forEach>
</table>
</corps>
</html>
Accédez à cet exemple JSP et les résultats sont les suivants :