Connessione al database JSP

Connessione al database in JSP

Il database viene utilizzato per archiviare vari tipi di dati che sono enormi e hanno una capacità di archiviazione in gigabyte. JSP può connettersi con tali database per creare e gestire i record.

In questo tutorial impareremo come creare una tabella nel database e come creare record in queste tabelle tramite JSP.

Crea tabella

In Database MYSQL, possiamo creare una tabella nel database con qualsiasi client MYSQL. Qui stiamo usando PHPMyadminclient, e lì abbiamo un'opzione "new" per creare una nuova tabella usando lo screenshot qui sotto.

Crea tabella nel database JSP

In questo, dobbiamo fornire il nome della tabella come guru_test e creeremo due campi: emp_id e emp_name.

Emp_idis ha il tipo di dati come int

Emp_name ha il tipo di dati come varchar

Crea tabella nel database JSP

Un'altra opzione è utilizzare il prompt dei comandi e modificare la directory MYSQL:

C:\>
C:\>cd Program Files\MY SQL\bin
C:\>Program Files\MySql\bin>

Possiamo accedere al database come segue:

C:\Program Files\MYSQL\bin>mysql –u gururoot –p
Enter Password: *******
Mysql>

Crea la tabella guru_testin nel database denominato GuruTestas come segue sul prompt 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)

Innanzitutto i record vengono inseriti utilizzando INSERT query e quindi possiamo usare SELECT query per verificare se la tabella è stata creata o meno.

Crea record

Dopo aver creato una tabella dobbiamo creare record nella tabella guru_test utilizzando la query di inserimento, mostrata di seguito:

I record inseriti qui sono:

  • 1 e guru emp1
  • 2 e guru 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 Operazioni: Inserisci, Aggiorna, Elimina, Seleziona

Utilizzando JSP, possiamo effettuare più operazioni nel database. Possiamo inserire i record e anche eliminare i record che non sono necessari. Se un record deve essere modificato, possiamo farlo utilizzando un aggiornamento. L'operazione Select aiuterà a recuperare i record che sono necessari.

Seleziona

L'operazione Seleziona viene utilizzata per selezionare i record dalla tabella.

Esempio:

In questo esempio, impareremo l'operazione di selezione del recupero dei record dalla tabella guru_test creata nella sezione precedente.

<%@ 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>

Spiegazione del codice:

Riga di codice 1: Qui stiamo importando io, uti e SQL librerie di Java.

Riga di codice 3: Qui stiamo importando la libreria principale di JSTL e dando il suo prefisso come gurucore che aiuterà a ottenere l'output.

Riga di codice 4: Qui stiamo importando la libreria SQL di jstl e dando il suo prefisso come gurusql che aiuterà a eseguire le operazioni SQL.

Riga di codice 15-17: Qui utilizzando gurusql, colleghiamo l'origine dati nominando la variabile "guru" e il driver come driver JDBC. Aggiungendo anche nome utente e password con “gururoot” e “guru”.

Riga di codice 19-21: Qui stiamo utilizzando la query SQL della query selezionata.

Riga di codice 31-32: Stiamo stampando l'output per emp id e emp name, che vengono recuperati dai risultati della query e utilizzando il ciclo foreach stampiamo l'output.

Quando esegui il codice sopra, otterremo l'output come di seguito;

Produzione:

Qui entrambi i record verranno recuperati dal database

1 guru dip1

2 guru dip2

inserire

L'operatore Inserisci viene utilizzato per inserire i record nel file banca dati.

Esempio:

In questo esempio impareremo come inserire i record nella tabella 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>

Spiegazione del codice:

Riga di codice 19-20: Qui stiamo inserendo record nella tabella guru_test di GuruTestdatabase. I record inseriti sono: empID – 3 e empname – emp emp3. Questi record saranno inseriti nella tabella Quando esegui il codice, i record vengono inseriti nella tabella come guru_test, con valore 3 e emp emp3.

Nota: Qui non mostriamo l'output perché stiamo solo inserendo il record nella tabella. Possiamo ottenere il record usando la query select come 'select * from guru_test'. Se il record fosse stato inserito, otterremmo il valore come 3 ed emp3. Se il record non fosse stato inserito, 3 non sarebbe stato visibile nei record nella tabella.

Elimina

Questa è un'operazione di eliminazione in cui eliminiamo i record dalla tabella guru_test.

Esempio:

Qui elimineremo la query per eliminare il record dalla tabella guru_test. Il record da eliminare deve essere impostato nella variabile “guruid” e il record corrispondente viene eliminato dal database.

<%@ 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>

Spiegazione del codice:

Riga di codice 18: Stiamo impostando una variabile guruid il cui valore è 3, che deve essere cancellata dal database. Questa è sempre una chiave primaria della tabella. In questo caso, la chiave primaria è emp_id.

Riga di codice 19-22: Qui stiamo usando una query di cancellazione che imposta un parametro nella clausola where. Qui il parametro è guruid che è impostato nella riga di codice 18. Il record corrispondente viene eliminato.

Produzione:

Quando esegui il codice precedente, il record con emp_id uguale a 3 viene eliminato.

Nota: In questo esempio, non possiamo mostrare l'output perché stiamo eliminando il record dalla tabella. Per verificare se quel record è stato eliminato, dobbiamo usare la query di selezione "select * from guru_test". In tal caso, se otteniamo 3 come id emp, la query di eliminazione è fallita, altrimenti il ​​record è stato eliminato correttamente.

Aggiornanento

L'aggiornamento viene utilizzato per modificare i record nella tabella.

Esempio:

<%@ 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>
	

Spiegazione del codice:

Riga di codice 18: Qui stiamo impostando una variabile guruid come 2. Questo è l'ID in cui vogliamo aggiornare il record.

Riga di codice 19-22: Qui stiamo usando una query di aggiornamento per aggiornare il record nella tabella guru_test del record, che è impostata al punto 18. Qui emp guru2 è sostituito da emp guru99

Produzione:

Quando esegui il codice soprastante, il record con emp_id 2 viene modificato in 99. Quindi, ora l'output mostrerà emp "guru99" invece di emp "guru2".

Sommario

In questo tutorial abbiamo imparato come connettere JSP al database e come accedere al database. Inoltre, abbiamo appreso varie operazioni eseguite sulla tabella nel database come creazione, eliminazione, aggiornamento, ecc.