Conexiune la baza de date JSP
Conectarea la baza de date în JSP
Baza de date este folosită pentru stocarea diferitelor tipuri de date care sunt uriașe și au capacitate de stocare în gigaocteți. JSP se poate conecta cu astfel de baze de date pentru a crea și gestiona înregistrările.
În acest tutorial, vom afla cum să creați un tabel în baza de date și cum să creați înregistrări în aceste tabele prin JSP.
Creați tabel
In Baza de date MYSQL, putem crea un tabel în baza de date cu orice client MYSQL. Aici folosim PHPMyadminclient și acolo avem o opțiune „nouă” pentru a crea un tabel nou folosind captura de ecran de mai jos.
În aceasta, trebuie să furnizăm numele tabelului ca guru_test și vom crea două câmpuri'emp_id și emp_name.
Emp_idis având tipul de date ca int
Emp_name are datatype ca varchar
O altă opțiune este utilizarea promptului de comandă și modificările în directorul MYSQL:
C:\> C:\>cd Program Files\MY SQL\bin C:\>Program Files\MySql\bin>
Ne putem autentifica la baza de date după cum urmează:
C:\Program Files\MYSQL\bin>mysql –u gururoot –p Enter Password: ******* Mysql>
Creați tabelul guru_testin baza de date numită GuruTestas după cum urmează pe promptul 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)
Mai întâi, înregistrările sunt introduse folosind INSERT
interogare și apoi putem folosi SELECT
interogare pentru a verifica dacă tabelul este creat sau nu.
Creați înregistrări
După crearea unui tabel, trebuie să creăm înregistrări în tabelul guru_test folosind interogarea de inserare, care este prezentată mai jos:
Înregistrările introduse aici sunt:
- 1 si guru emp1
- 2 si 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 Operacțiuni: Inserare, Actualizare, Ștergere, Selectare
Folosind JSP, putem face mai multe operații în baza de date. Putem introduce înregistrările și, de asemenea, putem șterge înregistrările care nu sunt necesare. Dacă orice înregistrare trebuie editată, atunci putem face folosind o actualizare. Operația Select va ajuta la preluarea înregistrărilor necesare.
Selectați
Operația Selectare este utilizată pentru a selecta înregistrările din tabel.
Exemplu:
În acest exemplu, vom afla despre operațiunea de selectare de preluare a înregistrărilor din tabelul guru_test care a fost creat în secțiunea de mai sus.
<%@ 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>
Explicația codului:
Linia de cod 1: Aici importăm io, uti și SQL biblioteci de java.
Linia de cod 3: Aici importăm biblioteca de bază a JSTL și îi dăm prefixul ca gurucore, care va ajuta la obținerea rezultatelor.
Linia de cod 4: Aici importăm biblioteca SQL a jstl și îi dăm prefixul ca gurusql, care va ajuta la efectuarea operațiunilor SQL.
Linia de cod 15-17: Aici, folosind gurusql, conectăm sursa de date denumind variabila „guru” și driverul ca driver JDBC. De asemenea, adăugarea numelui de utilizator și a parolei cu „gururoot” și „guru”.
Linia de cod 19-21: Aici folosim interogarea SQL a interogării select.
Linia de cod 31-32: Tipărim rezultatul pentru emp id și emp name, care sunt preluate din rezultatele interogării și utilizând bucla foreach tipărim rezultatul.
Când executați codul de mai sus, vom obține rezultatul ca mai jos;
ieșire:
Aici ambele înregistrări vor fi preluate din baza de date
1 guru emp1
2 guru emp2
Insera
Operatorul de inserare este folosit pentru a introduce înregistrările în Baza de date.
Exemplu:
În acest exemplu, vom învăța despre inserarea înregistrărilor în tabelul 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>
Explicația codului:
Linia de cod 19-20: Aici inserăm înregistrări în tabelul guru_test al bazei de date GuruTest. Înregistrările introduse sunt: empID – 3 și empname – emp emp3. Aceste înregistrări vor fi inserate în tabel Când executați codul, înregistrările sunt inserate în tabel ca guru_test , cu valoarea 3 și emp emp3.
Notă: Aici nu arătăm rezultatul, deoarece doar inserăm înregistrarea în tabel. Putem obține înregistrarea folosind interogarea selectă ca „select * din guru_test”. Dacă înregistrarea a fost inserată atunci, am obține valoarea ca 3 și emp3. Dacă înregistrarea nu este introdusă atunci, 3 nu vor fi văzute în înregistrările din tabel.
Șterge
Aceasta este operația de ștergere în care ștergem înregistrările din tabelul guru_test.
Exemplu:
Aici vom șterge interogarea pentru a șterge înregistrarea din tabelul guru_test. Înregistrarea care trebuie ștearsă trebuie setată în variabila „guruid”, iar înregistrarea corespunzătoare este ștearsă din baza de date.
<%@ 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>
Explicația codului:
Linia de cod 18: Setăm o variabilă guruid a cărei valoare este 3, care trebuie șters din baza de date. Aceasta este întotdeauna o cheie primară a tabelului. În acest caz, cheia primară este emp_id.
Linia de cod 19-22: Aici folosim o interogare de ștergere care setează un parametru în clauza where. Aici parametrul este guruid care este setat în linia de cod 18. Înregistrarea corespunzătoare este ștearsă.
ieșire:
Când executați codul de mai sus, înregistrarea cu emp_id ca 3 este ștearsă.
Notă: În acest exemplu, nu putem afișa rezultatul deoarece ștergem înregistrarea din tabel. Pentru a verifica dacă acea înregistrare este ștearsă, trebuie să folosim interogarea de selectare „select * from guru_test”. În acest caz, dacă obținem 3 ca id emp, atunci interogarea de ștergere a eșuat, altfel înregistrarea a fost ștearsă cu succes.
Actualizează
Actualizarea este utilizată pentru a edita înregistrările din tabel.
Exemplu:
<%@ 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>
Explicația codului:
Linia de cod 18: Aici setăm un guruid variabil ca 2. Acesta este ID-ul în care dorim să actualizăm înregistrarea.
Linia de cod 19-22: Aici folosim o interogare de actualizare pentru a actualiza înregistrarea în tabelul guru_test al înregistrării, care este stabilit la punctul 18. Aici emp guru2 este înlocuit cu emp guru99
ieșire:
Când executați codul de mai sus, înregistrarea withemp_id 2 este schimbată la 99. Deci, acum ieșirea va afișa emp”guru99″ în loc de emp “guru2”.
Rezumat
În acest tutorial, am învățat despre conectarea JSP la baza de date și accesul la baza de date. De asemenea, am aflat despre diverse operațiuni efectuate pe tabelul din baza de date, cum ar fi crearea, ștergerea, actualizarea etc.