Connexion à la base de données JSP
Connexion à la base de données dans JSP
La base de données est utilisée pour stocker divers types de données qui sont énormes et ont une capacité de stockage en gigaoctets. JSP peut se connecter à de telles bases de données pour créer et gérer les enregistrements.
Dans ce didacticiel, nous apprendrons comment créer une table dans la base de données et comment créer des enregistrements dans ces tables via JSP.
Créer un tableau
In Base de données MYSQL, nous pouvons créer une table dans la base de données avec n’importe quel client MYSQL. Ici, nous utilisons PHPMyadminclient, et nous avons une option « nouveau » pour créer une nouvelle table en utilisant la capture d’écran ci-dessous.
En cela, nous devons fournir le nom de la table sous la forme guru_test, et nous créerons deux champs, emp_id et emp_name.
Emp_idis a un type de données comme int
Emp_name a le type de données varchar
Une autre option consiste à utiliser l'invite de commande et à modifier le répertoire MYSQL :
C:\> C:\>cd Program Files\MY SQL\bin C:\>Program Files\MySql\bin>
Nous pouvons nous connecter à la base de données comme suit :
C:\Program Files\MYSQL\bin>mysql –u gururoot –p Enter Password: ******* Mysql>
Créez la table guru_test dans la base de données nommée GuruTest comme suit à l'invite MYSQL :
Mysql> use GuruTest; MySql> create table guru_test( Emp_idint NOT NULL, Emp_namevarchar(11), ); Once you execute this you get the following: Query OK, 0 rows affected(0.10 sec) MySQl> select * from guru_test; Query OK, 0 rows affected(0.10 sec)
Tout d'abord, les enregistrements sont insérés à l'aide de INSERT
requête et nous pouvons ensuite utiliser SELECT
requête pour vérifier si la table est créée ou non.
Créer des enregistrements
Après avoir créé une table, nous devons créer des enregistrements dans la table guru_test à l'aide de la requête d'insertion, illustrée ci-dessous :
Les enregistrements saisis ici sont :
- 1 et gourou emp1
- 2 et gourou emp2
MySql>INSERT INTO `couch_tomato_db`.`guru_test` (`emp_id`, `emp_name`) VALUES ('1', 'guru emp1'); Query OK, 1 row affected (0.05 sec) MySQL>INSERT INTO `couch_tomato_db`.`guru_test` (`emp_id`, `emp_name`) VALUES ('2', 'guru emp2'); Query OK, 1 row affected (0.05 sec)
JSP Operations : Insérer, Mettre à jour, Supprimer, Sélectionner
Grâce à JSP, nous pouvons effectuer plusieurs opérations dans la base de données. Nous pouvons insérer les enregistrements et également supprimer les enregistrements qui ne sont pas nécessaires. Si un enregistrement doit être modifié, nous pouvons le faire à l'aide d'une mise à jour. L'opération de sélection permettra de récupérer les enregistrements requis.
Choisir
L'opération Select est utilisée pour sélectionner les enregistrements de la table.
Exemple:
Dans cet exemple, nous allons découvrir l'opération de sélection consistant à récupérer les enregistrements de la table guru_test qui a été créée dans la section ci-dessus.
<%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Database JSP1</title> </head> <body> <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/GuruTest" user="gururoot" password="guru"/> <sql:query dataSource="${snapshot}" var="result"> SELECT * from guru_test; </sql:query> <table> <tr> <th>Guru ID</th> <th>Name</th> </tr> <c:forEach var="row" items="${result.rows}"> <tr> <td><c:out value="${row.emp_id}"/></td> <td><c:out value="${row.emp_name}"/></td> </tr> </c:forEach> </table> </body> </html>
Explication du code :
Ligne de code 1 : Ici, nous importons io, uti et SQL bibliothèques de Java.
Ligne de code 3 : Ici, nous importons la bibliothèque principale de JSTL et donnons son préfixe gurucore, ce qui aidera à obtenir la sortie.
Ligne de code 4 : Ici, nous importons la bibliothèque SQL de jstl et donnons son préfixe gurusql qui aidera à effectuer les opérations SQL.
Ligne de code 15-17 : Ici, en utilisant gurusql, nous connectons la source de données en nommant la variable « gourou » et le pilote en tant que pilote JDBC. Ajout également du nom d'utilisateur et du mot de passe avec « gururoot » et « guru ».
Ligne de code 19-21 : Ici, nous utilisons la requête SQL de la requête de sélection.
Ligne de code 31-32 : Nous imprimons la sortie pour emp id et emp name, qui sont récupérés à partir des résultats de la requête et en utilisant la boucle foreach, nous imprimons la sortie.
Lorsque vous exécutez le code ci-dessus, nous obtiendrons le résultat ci-dessous :
Sortie :
Ici, les deux enregistrements seront extraits de la base de données
1 gourou emp1
2 gourou emp2
insérer
L'opérateur d'insertion est utilisé pour insérer les enregistrements dans le base de données.
Mise en situation :
Dans cet exemple, nous allons apprendre à insérer les enregistrements dans la table guru_test
<%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="gurucore"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="gurusql"%> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Database JSP1</title> </head> <body> <gurusql:setDataSource var="guru" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/GuruTest" user="gururoot" password="guru"/> <gurusql:update dataSource="${guru}" var="guruvar"> INSERT INTO guru_test VALUES (3, 'emp emp3'); </gurusql:update> </body> </html>
Explication du code :
Ligne de code 19-20 : Ici, nous insérons des enregistrements dans la table guru_test de la base de données GuruTest. Les enregistrements insérés sont : empID – 3 et empname – emp emp3. Ces enregistrements seront insérés dans la table. Lorsque vous exécutez le code, les enregistrements sont insérés dans la table sous le nom guru_test, avec la valeur 3 et emp emp3.
Remarque : Ici, nous n'affichons pas la sortie car nous insérons simplement l'enregistrement dans la table. Nous pouvons obtenir l'enregistrement en utilisant une requête de sélection comme « select * from guru_test ». Si l'enregistrement a été inséré, nous obtiendrions la valeur 3 et emp3. Si l'enregistrement n'est pas inséré, 3 ne sera pas visible dans les enregistrements de la table.
Supprimer
Il s'agit d'une opération de suppression où nous supprimons les enregistrements de la table guru_test.
Mise en situation :
Ici, nous allons supprimer la requête pour supprimer l'enregistrement de la table guru_test. L'enregistrement qui doit être supprimé doit être défini dans la variable « guruid » et l'enregistrement correspondant est supprimé de la base de données.
<%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="gurucore"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="gurusql"%> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Database JSP1</title> </head> <body> <gurusql:setDataSource var="guru" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/GuruTest" user="gururoot" password="guru"/> <gurucore:set var="guruid" value="3"/> <gurusql:update dataSource="${guru}" var="guruvar"> DELETE FROM guru_test WHERE emp_id = ? <gurusql:param value="${guruid}" /> </gurusql:update> </body> </html>
Explication du code :
Ligne de code 18 : Nous définissons une variable guruid dont la valeur est 3, qui doit être supprimée de la base de données. C'est toujours une clé primaire de la table. Dans ce cas, la clé primaire est le emp_id.
Ligne de code 19-22 : Nous utilisons ici une requête de suppression qui définit un paramètre dans la clause where. Ici, le paramètre est guruid qui est défini dans la ligne de code 18. L'enregistrement correspondant est supprimé.
Sortie :
Lorsque vous exécutez le code ci-dessus, l'enregistrement avec emp_id comme 3 est supprimé.
Remarque : Dans cet exemple, nous ne pouvons pas afficher la sortie car nous supprimons l'enregistrement de la table. Pour vérifier si cet enregistrement est supprimé, nous devons utiliser la requête de sélection « select * from guru_test ». Dans ce cas, si nous obtenons 3 comme identifiant d'entrée, la requête de suppression a échoué, sinon l'enregistrement a été supprimé avec succès.
Mises à jour
La mise à jour permet de modifier les enregistrements de la table.
Mise en situation :
<%@ page import="java.io.*,java.util.*,java.sql.*"%> <%@ page import="javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="gurucore"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="gurusql"%> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Database JSP1</title> </head> <body> <gurusql:setDataSource var="guru" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/GuruTest" user="gururoot" password="guru"/> <gurucore:set var="guruid" value="2"/> <gurusql:update dataSource="${guru}" var="guruvar"> UPDATE guru_test SET emp_name='emp guru99' <gurusql:param value="${guruid}" /> </gurusql:update> </body> </html>
Explication du code :
Ligne de code 18 : Ici, nous définissons une variable guruid sur 2. Il s'agit de l'ID où nous voulons mettre à jour l'enregistrement.
Ligne de code 19-22 : Ici, nous utilisons une requête de mise à jour pour mettre à jour l'enregistrement dans la table guru_test de l'enregistrement, qui est définie au point 18. Ici emp guru2 est remplacé par emp guru99
Sortie :
Lorsque vous exécutez le code ci-dessus, l’enregistrement avec emp_id 2 est modifié en 99. Ainsi, la sortie affichera désormais emp « guru99 » au lieu de emp « guru2 ».
Résumé
Dans ce didacticiel, nous avons appris à connecter JSP à la base de données et à accéder à la base de données. Nous avons également découvert diverses opérations effectuées sur la table dans la base de données, telles que la création, la suppression, la mise à jour, etc.