Sunteți pe pagina 1din 38

Cursul 5.

Dezvoltarea unei aplicaţii web cu


ajutorul tehnologiei Java Server Pages

În acest curs vom dezvolta o aplicatie web cu ajutorul tehnologiei Java Server Pages
(JSP). Aplicaţia va fi construită în NetBeans făra a folosi vreun framework existent iar baza de
date va fi dezvoltată în SGBD-ul MySql.
Aplicaţia trebuie să permită operaţiile de bază CRUD(Create, Read, Update, Delete) pe
toate tabelele bazei de date.
Diagrama logică a bazei de date “spital” este următoarea:

Tabele sunt următoarele:


* medici(idmedic, Nume, Prenume);
* pacienti(idpacient, Nume, Prenume, Adresa);
* consultatie(idconsultatie, idpacient, idmedic, DataConsultatie, Diagnostic,
Medicament).
Între tabelele medici şi pacienţi se realizează asocierea M:N prin intermediul tabelei de
legatură consultatie. Astfel, în această tabelă vom avea 2 chei străine(FK): idpacient şi
idmedic.
Pentru a evita problemele de funcţionalitate ale aplicaţiei trebuie respectate următoarele
reguli simple:
* toate id-urile în baza de date vor avea acelaşi tip de date(INT);
* câmpurile idpacient(din tabela pacienti), idconsultatie(din tabela consultatie) şi
idmedic(din tabela medici) vor fi chei primare(PK, NN) şi vor fi setate astfel încât valorile să se
autogenereze(AI - AUTO_INCREMENT).
* în tabela consultaţie veţi avea 2 chei străine la care se va seta opţiunea de CASCADE la
ştergere(se poate pune şi la modificare).
Atenţie: respectaţi denumirea bazei de date, a tabelelor şi a câmpurilor din diagrama
bazei de date pentru o funcţionare corectă a aplicaţiei.
Dezvoltarea aplicaţiei web în NetBeans

1. Din meniul File se alege opţiunea New Project.


2. În fereastra apărută se alege opţiunea Web Application din cadrul categoriei de aplicaţii
Java Web.

3. Se dă numele noului proiect: Curs5


4. Se alege serverul pe care va rula aplicaţia web. În cazul nostru se va alege serverul
GlasFish Server 4.1.1. Se poate alege şi serverul Apache.

5. În fereastra următoare nu se va alege nici un framework de dezvoltare a aplicaţiei web


astfel încât se va apăsa direct butonul Finish.
6. În cadrul acestui pas trebuie configurat proiectul astfel încât să se permită conectarea la o
bază de date implementată în SGBD-ul MySql. Se va da click dreapta pe proiect şi se va
accesa opţiunea Properties.
7. Aici se va acţiona butonul de adăugare a unei noi librării - Add Library:

Din lista disponibilă se va alege librăria MySQL JDBC Driver (conectorul de MySql pentru Java
- acesta poate fi găsit şi pe site-ul oficial MySql la adresa: http://dev.mysql.com/downloads/connector/j/)
După ce se adaugă librăria se apasă OK deoarece nu mai avem alte configurări de efectuat.
8. Se apasă click dreapta pe proiectul Curs5 şi se alege opţiunea New Java Class. Dacă nu
vedeţi opţiunea de creare a unei clase simple Java intraţi la opţiunea Other. Aici se merge pe
categoria Java în cadrul căreia se alege Java Class.
9. Se dă numele clasei “JavaBean” iar la package se pune numele “db”. Atenţie: este
foarte important ca clasa JavaBean să fie pusă în pachetul “db”.

10. Se şterge codul autogenerat. Acesta îl veţi înlocui cu următorul cod:

package db;

import java.sql.*;

/**
*
* @author vali
*/
public class JavaBean {

String error;
Connection con;

public JavaBean() {
}

public void connect() throws ClassNotFoundException, SQLException, Exception {


try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/spital?useSSL=false", "root", "parola");
// nu uitati sa puneti parola corecta de root pe care o aveti setata pe serverul vostru de MySql.
} catch (ClassNotFoundException cnfe) {
error = "ClassNotFoundException: Nu s-a gasit driverul bazei de date.";
throw new ClassNotFoundException(error);
} catch (SQLException cnfe) {
error = "SQLException: Nu se poate conecta la baza de date.";
throw new SQLException(error);
} catch (Exception e) {
error = "Exception: A aparut o exceptie neprevazuta in timp ce se stabilea legatura la baza de date.";
throw new Exception(error);
}
} // connect()

public void connect(String bd) throws ClassNotFoundException, SQLException, Exception {


try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/" + bd, "root", "parola");
} catch (ClassNotFoundException cnfe) {
error = "ClassNotFoundException: Nu s-a gasit driverul bazei de date.";
throw new ClassNotFoundException(error);
} catch (SQLException cnfe) {
error = "SQLException: Nu se poate conecta la baza de date.";
throw new SQLException(error);
} catch (Exception e) {
error = "Exception: A aparut o exceptie neprevazuta in timp ce se stabilea legatura la baza de date.";
throw new Exception(error);
}
} // connect(String bd)

public void connect(String bd, String ip) throws ClassNotFoundException, SQLException, Exception {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://" + ip + ":3306/" + bd, "root", "parola");
} catch (ClassNotFoundException cnfe) {
error = "ClassNotFoundException: Nu s-a gasit driverul bazei de date.";
throw new ClassNotFoundException(error);
} catch (SQLException cnfe) {
error = "SQLException: Nu se poate conecta la baza de date.";
throw new SQLException(error);
} catch (Exception e) {
error = "Exception: A aparut o exceptie neprevazuta in timp ce se stabilea legatura la baza de date.";
throw new Exception(error);
}
} // connect(String bd, String ip)

public void disconnect() throws SQLException {


try {
if (con != null) {
con.close();
}
} catch (SQLException sqle) {
error = ("SQLException: Nu se poate inchide conexiunea la baza de date.");
throw new SQLException(error);
}
} // disconnect()

public void adaugaPacient(String Nume, String Prenume, String Adresa)


throws SQLException, Exception {
if (con != null) {
try {
// create a prepared SQL statement
Statement stmt;
stmt = con.createStatement();
stmt.executeUpdate("insert into pacienti(Nume, Prenume, Adresa) values('" + Nume + "' , '" +
Prenume + "', '" + Adresa + "');");

} catch (SQLException sqle) {


error = "ExceptieSQL: Reactualizare nereusita; este posibil sa existe duplicate.";
throw new SQLException(error);
}
} else {
error = "Exceptie: Conexiunea cu baza de date a fost pierduta.";
throw new Exception(error);
}
} // end of adaugaPacient()

public void adaugaMedic(String Nume, String Prenume, String Sectie)


throws SQLException, Exception {
if (con != null) {
try {
// create a prepared SQL statement
Statement stmt;
stmt = con.createStatement();
stmt.executeUpdate("insert into medici(Nume, Prenume, Sectie) values('" + Nume + "' , '" +
Prenume + "', '" + Sectie + "');");

} catch (SQLException sqle) {


error = "ExceptieSQL: Reactualizare nereusita; este posibil sa existe duplicate.";
throw new SQLException(error);
}
} else {
error = "Exceptie: Conexiunea cu baza de date a fost pierduta.";
throw new Exception(error);
}
} // end of adaugaMedic()

public void adaugaConsultatie(int idpacient, int idmedic, String DataConsultatie, String Diagnostic, String
Medicament)
throws SQLException, Exception {
if (con != null) {
try {
// create a prepared SQL statement
Statement stmt;
stmt = con.createStatement();
stmt.executeUpdate("insert into consultatie(idpacient, idmedic, DataConsultatie, Diagnostic,
Medicament) values('" + idpacient + "' , '" + idmedic + "', '" + DataConsultatie + "', '" + Diagnostic + "', '" + Medicament
+ "');");
// se poate modifica valoarea datei astfel incat sa se ia data curenta a sistemului:
// stmt.executeUpdate("insert into consultatie(idpacient, idmedic, DataConsultatie, Diagnostic,
Medicament) values('" + idpacient + "' , '" + idmedic + "', CURDATE(), '" + Diagnostic + "', '" + Medicament + "');");

} catch (SQLException sqle) {


error = "ExceptieSQL: Reactualizare nereusita; este posibil sa existe duplicate.";
throw new SQLException(error);
}
} else {
error = "Exceptie: Conexiunea cu baza de date a fost pierduta.";
throw new Exception(error);
}
} // end of adaugaConsultatie()

public ResultSet vedeTabela(String tabel) throws SQLException, Exception {


ResultSet rs = null;
try {
String queryString = ("select * from `spital`.`" + tabel + "`;");
Statement stmt = con.createStatement(/*ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY*/);
rs = stmt.executeQuery(queryString);
} catch (SQLException sqle) {
error = "SQLException: Interogarea nu a fost posibila.";
throw new SQLException(error);
} catch (Exception e) {
error = "A aparut o exceptie in timp ce se extrageau datele.";
throw new Exception(error);
}
return rs;
} // vedeTabela()

public ResultSet vedeConsultatie() throws SQLException, Exception {


ResultSet rs = null;
try {
String queryString = ("select a.Nume NumePacient, a.Prenume PrenumePacient, a.Adresa, b.Nume
NumeMedic, b.Prenume PrenumeMedic, b.Sectie, c.idconsultatie, c.idmedic idmedic_consult, c.idpacient
idpacient_consult, c.DataConsultatie, c.Diagnostic, c.Medicament from pacienti a, medici b, consultatie c where
a.idpacient = c.idpacient and b.idmedic = c.idmedic;");
Statement stmt = con.createStatement(/*ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY*/);
rs = stmt.executeQuery(queryString);
} catch (SQLException sqle) {
error = "SQLException: Interogarea nu a fost posibila.";
throw new SQLException(error);
} catch (Exception e) {
error = "A aparut o exceptie in timp ce se extrageau datele.";
throw new Exception(error);
}
return rs;
} // vedeConsultatie()

public void stergeDateTabela(String[] primaryKeys, String tabela, String dupaID) throws SQLException,
Exception {
if (con != null) {
try {
// create a prepared SQL statement
long aux;
PreparedStatement delete;
delete = con.prepareStatement("DELETE FROM " + tabela + " WHERE " + dupaID + "=?;");
for (int i = 0; i < primaryKeys.length; i++) {
aux = java.lang.Long.parseLong(primaryKeys[i]);
delete.setLong(1, aux);
delete.execute();
}
} catch (SQLException sqle) {
error = "ExceptieSQL: Reactualizare nereusita; este posibil sa existe duplicate.";
throw new SQLException(error);
} catch (Exception e) {
error = "A aparut o exceptie in timp ce erau sterse inregistrarile.";
throw new Exception(error);
}
} else {
error = "Exceptie: Conexiunea cu baza de date a fost pierduta.";
throw new Exception(error);
}
} // end of stergeDateTabela()

public void stergeTabela(String tabela) throws SQLException, Exception {


if (con != null) {
try {
// create a prepared SQL statement
Statement stmt;
stmt = con.createStatement();
stmt.executeUpdate("delete from " + tabela + ";");
} catch (SQLException sqle) {
error = "ExceptieSQL: Stergere nereusita; este posibil sa existe duplicate.";
throw new SQLException(error);
}
} else {
error = "Exceptie: Conexiunea cu baza de date a fost pierduta.";
throw new Exception(error);
}
} // end of stergeTabela()

public void modificaTabela(String tabela, String IDTabela, int ID, String[] campuri, String[] valori) throws
SQLException, Exception {
String update = "update " + tabela + " set ";
String temp = "";
if (con != null) {
try {
for (int i = 0; i < campuri.length; i++) {
if (i != (campuri.length - 1)) {
temp = temp + campuri[i] + "='" + valori[i] + "', ";
} else {
temp = temp + campuri[i] + "='" + valori[i] + "' where " + IDTabela + " = '" + ID + "';";
}
}
update = update + temp;
// create a prepared SQL statement
Statement stmt;
stmt = con.createStatement();
stmt.executeUpdate(update);
} catch (SQLException sqle) {
error = "ExceptieSQL: Reactualizare nereusita; este posibil sa existe duplicate.";
throw new SQLException(error);
}
} else {
error = "Exceptie: Conexiunea cu baza de date a fost pierduta.";
throw new Exception(error);
}
} // end of modificaTabela()

public ResultSet intoarceLinie(String tabela, int ID) throws SQLException, Exception {


ResultSet rs = null;
try {
// Execute query
String queryString = ("SELECT * FROM " + tabela + " where idpacient=" + ID + ";");
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(queryString); //sql exception
} catch (SQLException sqle) {
error = "SQLException: Interogarea nu a fost posibila.";
throw new SQLException(error);
} catch (Exception e) {
error = "A aparut o exceptie in timp ce se extrageau datele.";
throw new Exception(error);
}
return rs;
} // end of intoarceLinie()

public ResultSet intoarceLinieDupaId(String tabela, String denumireId, int ID) throws SQLException, Exception {
ResultSet rs = null;
try {
// Execute query
String queryString = ("SELECT * FROM " + tabela + " where " + denumireId + "=" + ID + ";");
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(queryString); //sql exception
} catch (SQLException sqle) {
error = "SQLException: Interogarea nu a fost posibila.";
throw new SQLException(error);
} catch (Exception e) {
error = "A aparut o exceptie in timp ce se extrageau datele.";
throw new Exception(error);
}
return rs;
} // end of intoarceLinieDupaId()

public ResultSet intoarceConsultatieId(int ID) throws SQLException, Exception {


ResultSet rs = null;
try {
// Execute query
String queryString = ("SELECT a.Nume NumePacient, a.Prenume PrenumePacient, a.Adresa, b.Nume
NumeMedic, b.Prenume PrenumeMedic, b.Sectie, c.idconsultatie, c.idmedic idmedic_consult, c.idpacient
idpacient_consult, dataconsultatie, diagnostic, medicament FROM pacienti a, medici b, consultatie c WHERE
a.idpacient = c.idpacient AND b.idmedic = c.idmedic and idconsultatie = '" + ID + "';");
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(queryString); //sql exception
} catch (SQLException sqle) {
error = "SQLException: Interogarea nu a fost posibila.";
throw new SQLException(error);
} catch (Exception e) {
error = "A aparut o exceptie in timp ce se extrageau datele.";
throw new Exception(error);
}
return rs;
} // end of intoarceLinieDupaId()
}

11. Dacă nu sunteţi mulţumiţi cu formatarea textului puteţi să il formataţi voi: tastaţi CTRL + A
în fişierul JavaBean după care tastaţi ALT + SHIFT + F.
Clasa JavaBean conţine toate funcţiile ce vor da funcţionalitatea aplicaţiei web.
12. În cadrul proiectului Curs5 se intră în structura proiectului la Web Pages. Aici se observă
faptul că se crează automat pagina index.html. Se intră pe această pagină:

13. Se şterge codul generat automat după care se pune următorul cod în pagina
index.html:
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<title>index</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<hr>
<hr>
<br/>
<h2>Vizualizari + Adaugari + Stergeri</h2>
<p> <a href="tabela_Pacienti.jsp"><b><strong>Pacienti</strong></b></a></p>
<p> <a href="tabela_Medici.jsp"><b><strong>Medici</strong></b></a></p>
<p> <a href="tabela_Consultatie.jsp"><b><strong>Consultatie</strong></b></a></p>
<br/>
<hr>
<ul>
<li><a href="modifica_Pacient.jsp"><b><strong>Modifica Pacienti</strong></b></a></li>
</ul>
<ul>
<li><a href="modifica_Medic.jsp"><b><strong>Modifica Medici</strong></b></a></li>
</ul>
<ul>
<li><a href="modifica_Consultatie.jsp"><b><strong>Modifica Consultatie</strong></b></a></li>
</ul>
<hr>
<hr>
<br/>
</body>
</html>
14. Se alege opţiunea de construire a unei noi pagini JSP. Se apasă click dreapta pe proiectul
Curs5 - New -> Other ->Web -> JSP. De regulă opţiunea de JSP apare şi la New -> JSP...

15. Se construieşte pagina JSP de vizualizare a pacienţilor - tabela_Pacienti.jsp.

Se înlocuieşte codul generat automat cu următorul cod:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Pacienti</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Pacienti:</h1>
<br/>
<p align="center"><a href="nou_Pacient.jsp"><b>Adauga un nou pacient.</b></a> <a
href="index.html"><b>Home</b></a></p>
<form action="sterge_Pacient.jsp" method="post">
<table border="1" align="center">
<tr>
<td><b>Mark:</b></td>
<td><b>IdPacient:</b></td>
<td><b>Nume:</b></td>
<td><b>Prenume:</b></td>
<td><b>Adresa:</b></td>

</tr>
<%
jb.connect();
ResultSet rs = jb.vedeTabela("pacienti");
long x;
while (rs.next()) {
x = rs.getInt("idpacient");
%>
<tr>
<td><input type="checkbox" name="primarykey" value="<%= x%>" /></td><td><%= x%></td>
<td><%= rs.getString("Nume")%></td>
<td><%= rs.getString("Prenume")%></td>
<td><%= rs.getString("Adresa")%></td>
<%
}
%>
</tr>
</table><br/>
<p align="center">
<input type="submit" value="Sterge liniile marcate">
</p>
</form>
<%
rs.close();
jb.disconnect();
%>
<br/>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

16. La fel ca în cazul precedent se construieşte pagina nou_Pacient.jsp.


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Adauga pacient</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<%
String Nume = request.getParameter("Nume");
String Prenume = request.getParameter("Prenume");
String Adresa = request.getParameter("Adresa");
if (Nume != null) {
jb.connect();
jb.adaugaPacient(Nume, Prenume, Adresa);
jb.disconnect();
%>
<p>Datele au fost adaugate.</p><%
} else {
%>
<h1> Suntem in tabela Pacient.</h1>
<form action="nou_Pacient.jsp" method="post">
<table>
<tr>
<td align="right">Nume Pacient:</td>
<td> <input type="text" name="Nume" size="40" /></td>
</tr>
<tr>
<td align="right">Prenume Pacient:</td>
<td> <input type="text" name="Prenume" size="30" /></td>
</tr>
<tr>
<td align="right">Adresa:</td>
<td> <input type="text" name="Adresa" size="30" /></td>
</tr>
</table>
<input type="submit" value="Adauga pacientul" />
</form>
<%
}
%>
<br/>
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>

17. Se construieşte pagina sterge_Pacient:


<%--
Document : sterge_Pacient
Created on : Nov 14, 2016, 1:32:42 PM
Author : vali
--%>

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>


<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Pacienti</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<%
String[] s = request.getParameterValues("primarykey");
jb.connect();
jb.stergeDateTabela(s, "pacienti", "idpacient");
jb.disconnect();
%>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>
18. Se construieşte pagina modifica_Pacient:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Pacienti</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Pacienti:</h1>
<br/>
<p align="center"><a href="nou_Pacient.jsp"><b>Adauga un nou pacient.</b></a> <a
href="index.html"><b>Home</b></a></p>
<form action="m1_Pacient.jsp" method="post">
<table border="1" align="center">
<tr>
<td><b>Mark:</b></td>
<td><b>IdPacient:</b></td>
<td><b>Nume:</b></td>
<td><b>Prenume:</b></td>
<td><b>Adresa:</b></td>
</tr>
<%
jb.connect();
ResultSet rs = jb.vedeTabela("pacienti");
long x;
while (rs.next()) {
x = rs.getLong("idpacient");
%>
<tr>
<td><input type="checkbox" name="primarykey" value="<%= x%>" /></td>
<td><%= x%></td>
<td><%= rs.getString("Nume")%></td>
<td><%= rs.getString("Prenume")%></td>
<td><%= rs.getString("Adresa")%></td>
<%
}
%>
</tr>
</table><br/>
<p align="center">
<input type="submit" value="Modifica linia">
</p>
</form>
<%
jb.disconnect();%>
<br/>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

19. Se construieşte pagina m1_Pacient.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Pacienti</title>
<link href="table.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center">Tabela Pacienti:</h1>
<br/>
<p align="center"><a href="nou_Pacient.jsp"><b>Adauga un nou pacient.</b></a> <a
href="index.html"><b>Home</b></a></p>
<%
jb.connect();
int aux = java.lang.Integer.parseInt(request.getParameter("primarykey"));
ResultSet rs = jb.intoarceLinieDupaId("pacienti", "idpacient", aux);
rs.first();
String Nume = rs.getString("Nume");
String Prenume = rs.getString("Prenume");
String Adresa = rs.getString("Adresa");
rs.close();
jb.disconnect();
%>
<form action="m2_Pacient.jsp" method="post">
<table align="center">
<tr>
<td align="right">IdPacient:</td>
<td> <input type="text" name="idpacient" size="30" value="<%= aux%>" readonly/></td>
</tr>
<tr>
<td align="right">Nume:</td>
<td> <input type="text" name="Nume" size="30" value="<%= Nume%>"/></td>
</tr>
<tr>
<td align="right">Prenume:</td>
<td> <input type="text" name="Prenume" size="30" value="<%= Prenume%>"/></td>
</tr>
<tr>
<td align="right">Adresa:</td>
<td> <input type="text" name="Adresa" size="30" value="<%= Adresa%>"/></td>
</tr>
</table><p align="center">
<input type="submit" value="Modifica linia">
</p>
</form>
<p align="center"">
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>

20. Se construieşte pagina m2_Pacient.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Pacient</title>
<link href="table.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Pacienti:</h1>
<br/>
<p align="center"><a href="nou_Pacient.jsp"><b>Adauga un nou pacient.</b></a> <a
href="index.html"><b>Home</b></a></p>
<%
jb.connect();
int aux = java.lang.Integer.parseInt(request.getParameter("idpacient"));
String Nume = request.getParameter("Nume");
String Prenume = request.getParameter("Prenume");
String Adresa = request.getParameter("Adresa");

String[] valori = {Nume, Prenume, Adresa};


String[] campuri = {"Nume", "Prenume", "Adresa"};
jb.modificaTabela("pacienti", "idpacient", aux, campuri, valori);
jb.disconnect();
%>
<h1 align="center">Modificarile au fost efectuate !</h1>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>

21. În continuare se construiesc paginile jsp care vor implementa operaţiile CRUD pe tabela
Medici. Paginile jsp pentru această tabelă sunt foarte asemănătoare cu cele prezentate până
acum.
Se construieşte pagina tabela_Medici.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Medici</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Medici:</h1>
<br/>
<p align="center"><a href="nou_Medic.jsp"><b>Adauga un nou medic.</b></a> <a
href="index.html"><b>Home</b></a></p>
<form action="sterge_Medic.jsp" method="post">
<table border="1" align="center">
<tr>
<td><b>Mark:</b></td>
<td><b>IdMedic:</b></td>
<td><b>Nume:</b></td>
<td><b>Prenume:</b></td>
<td><b>Sectie:</b></td>
</tr>
<%
jb.connect();
ResultSet rs = jb.vedeTabela("medici");
long x;
while (rs.next()) {
x = rs.getInt("idmedic");
%>
<tr>
<td><input type="checkbox" name="primarykey" value="<%= x%>" /></td><td><%= x%></td>
<td><%= rs.getString("Nume")%></td>
<td><%= rs.getString("Prenume")%></td>
<td><%= rs.getString("Sectie")%></td>
<%
}
%>
</tr>
</table><br/>
<p align="center">
<input type="submit" value="Sterge liniile marcate">
</p>
</form>
<%
rs.close();
jb.disconnect();
%>
<br/>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

22. Se construieşte pagina nou_Medic.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Adauga Medic</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<%
String Nume = request.getParameter("Nume");
String Prenume = request.getParameter("Prenume");
String Sectie = request.getParameter("Sectie");
if (Nume != null) {
jb.connect();
jb.adaugaMedic(Nume, Prenume, Sectie);
jb.disconnect();
%>
<p>Datele au fost adaugate.</p><%
} else {
%>
<h1> Suntem in tabela Medic.</h1>
<form action="nou_Medic.jsp" method="post">
<table>
<tr>
<td align="right">Nume Medic:</td>
<td> <input type="text" name="Nume" size="40" /></td>
</tr>
<tr>
<td align="right">Prenume Medic:</td>
<td> <input type="text" name="Prenume" size="30" /></td>
</tr>
<tr>
<td align="right">Sectie:</td>
<td> <input type="text" name="Sectie" size="30" /></td>
</tr>
</table>
<input type="submit" value="Adauga medicul" />
</form>
<%
}
%>
<br/>
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>
23. Se construieşte pagina sterge_Medic.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Medici</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<%
String[] s = request.getParameterValues("primarykey");
jb.connect();
jb.stergeDateTabela(s, "medici", "idmedic");
jb.disconnect();
%>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

24. Se construieşte pagina modifica_Medic.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Medici</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Medici:</h1>
<br/>
<p align="center"><a href="nou_Medic.jsp"><b>Adauga un nou medic.</b></a> <a
href="index.html"><b>Home</b></a></p>
<form action="m1_Medic.jsp" method="post">
<table border="1" align="center">
<tr>
<td><b>Mark:</b></td>
<td><b>IdMedic:</b></td>
<td><b>Nume:</b></td>
<td><b>Prenume:</b></td>
<td><b>Sectie:</b></td>
</tr>
<%
jb.connect();
ResultSet rs = jb.vedeTabela("medici");
long x;
while (rs.next()) {
x = rs.getLong("idmedic");
%>
<tr>
<td><input type="checkbox" name="primarykey" value="<%= x%>" /></td>
<td><%= x%></td>
<td><%= rs.getString("Nume")%></td>
<td><%= rs.getString("Prenume")%></td>
<td><%= rs.getString("Sectie")%></td>
<%
}
%>
</tr>
</table><br/>
<p align="center">
<input type="submit" value="Modifica linia">
</p>
</form>
<%
jb.disconnect();%>
<br/>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

25. Se construieşte pagina m1_Medic.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Medici</title>
<link href="table.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center">Tabela Medici:</h1>
<br/>
<p align="center"><a href="nou_Medic.jsp"><b>Adauga un nou medic.</b></a> <a
href="index.html"><b>Home</b></a></p>
<%
jb.connect();
int aux = java.lang.Integer.parseInt(request.getParameter("primarykey"));
ResultSet rs = jb.intoarceLinieDupaId("medici", "idmedic", aux);
rs.first();
String Nume = rs.getString("Nume");
String Prenume = rs.getString("Prenume");
String Sectie = rs.getString("Sectie");
rs.close();
jb.disconnect();
%>
<form action="m2_Medic.jsp" method="post">
<table align="center">
<tr>
<td align="right">IdMedic:</td>
<td> <input type="text" name="idmedic" size="30" value="<%= aux%>" readonly/></td>
</tr>
<tr>
<td align="right">Nume:</td>
<td> <input type="text" name="Nume" size="30" value="<%= Nume%>"/></td>
</tr>
<tr>
<td align="right">Prenume:</td>
<td> <input type="text" name="Prenume" size="30" value="<%= Prenume%>"/></td>
</tr>
<tr>
<td align="right">Sectie:</td>
<td> <input type="text" name="Sectie" size="30" value="<%= Sectie%>"/></td>
</tr>
</table><p align="center">
<input type="submit" value="Modifica linia">
</p>
</form>
<p align="center"">
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>

26. Se construieşte pagina m2_Medic.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Medic</title>
<link href="table.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Medici:</h1>
<br/>
<p align="center"><a href="nou_Medic.jsp"><b>Adauga un nou medic.</b></a> <a
href="index.html"><b>Home</b></a></p>
<%
jb.connect();
int aux = java.lang.Integer.parseInt(request.getParameter("idmedic"));
String Nume = request.getParameter("Nume");
String Prenume = request.getParameter("Prenume");
String Sectie = request.getParameter("Sectie");

String[] valori = {Nume, Prenume, Sectie};


String[] campuri = {"Nume", "Prenume", "Sectie"};
jb.modificaTabela("medici", "idmedic", aux, campuri, valori);
jb.disconnect();
%>
<h1 align="center">Modificarile au fost efectuate !</h1>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>
27. În continuare se vor construi paginile care implementează funcţionalităţile pentru tabela
de legatură “consultatie”. Implementările în acest caz diferă puţin faţă de celelalte deoarece în
toate cazurile am dorit sa vizualizăm datele referite de cheile străine.
Se va implementa pagina tabela_Consultatie.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Consultatie</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Pacienti:</h1>
<br/>
<p align="center"><a href="nou_Consultatie.jsp"><b>Adauga o noua consultatie.</b></a> <a
href="index.html"><b>Home</b></a></p>
<form action="sterge_Consultatie.jsp" method="post">
<table border="1" align="center">
<tr>
<td><b>Mark:</b></td>
<td><b>IdConsultatie:</b></td>
<td><b>IdPacient:</b></td>
<td><b>NumePacient:</b></td>
<td><b>PrenumePacient:</b></td>
<td><b>Adresa:</b></td>
<td><b>IdMedic:</b></td>
<td><b>NumeMedic:</b></td>
<td><b>PrenumeMedic:</b></td>
<td><b>Sectie:</b></td>
<td><b>DataConsultatie:</b></td>
<td><b>Diagnostic:</b></td>
<td><b>Medicament:</b></td>
</tr>
<%
jb.connect();
ResultSet rs = jb.vedeConsultatie();
long x;
while (rs.next()) {
x = rs.getInt("idconsultatie");
%>
<tr>
<td><input type="checkbox" name="primarykey" value="<%= x%>" /></td><td><%= x%></td>
<td><%= rs.getInt("idpacient_consult")%></td>
<td><%= rs.getString("NumePacient")%></td>
<td><%= rs.getString("PrenumePacient")%></td>
<td><%= rs.getString("Adresa")%></td>
<td><%= rs.getInt("idmedic_consult")%></td>
<td><%= rs.getString("NumeMedic")%></td>
<td><%= rs.getString("PrenumeMedic")%></td>
<td><%= rs.getString("Sectie")%></td>
<td><%= rs.getDate("dataconsultatie")%></td>
<td><%= rs.getString("diagnostic")%></td>
<td><%= rs.getString("medicament")%></td>
<%
}
%>
</tr>
</table><br/>
<p align="center">
<input type="submit" value="Sterge liniile marcate">
</p>
</form>
<%
rs.close();
jb.disconnect();
%>
<br/>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

28. Se construieşte pagina nou_Consultatie.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Adauga consultatie</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<%
int idpacient, idmedic;
String id1, id2, NumePacient, PrenumePacient, Adresa, NumeMedic, PrenumeMedic, Sectie, Diagnostic,
Medicament, DataConsultatie;
id1 = request.getParameter("idpacient");
id2 = request.getParameter("idmedic");
DataConsultatie = request.getParameter("DataConsultatie");
Diagnostic = request.getParameter("Diagnostic");
Medicament = request.getParameter("Medicament");
if (id1 != null) {
jb.connect();
jb.adaugaConsultatie(java.lang.Integer.parseInt(id1), java.lang.Integer.parseInt(id2),
DataConsultatie, Diagnostic, Medicament);
jb.disconnect();
%>
<p>Datele au fost adaugate.</p><%
} else {
jb.connect();
ResultSet rs1 = jb.vedeTabela("pacienti");
ResultSet rs2 = jb.vedeTabela("medici");
%>
<h1> Suntem in tabela consultatie.</h1>
<form action="nou_Consultatie.jsp" method="post">
<table>
<tr>
<td align="right">IdPacient:</td>
<td>
Selectati pacientul:
<SELECT NAME="idpacient">
<%
while(rs1.next()){
idpacient = rs1.getInt("idpacient");
NumePacient = rs1.getString("Nume");
PrenumePacient = rs1.getString("Prenume");
Adresa = rs1.getString("Adresa");
%>
<OPTION VALUE="<%= idpacient%>"><%= idpacient%>,<%=
NumePacient%>,<%= PrenumePacient%>,<%= Adresa%></OPTION>
<%
}
%>
</SELECT>
</td>
</tr>
<tr>
<td align="right">IdMedic:</td>
<td>
Selectati medicul:
<SELECT NAME="idmedic">
<!-- OPTION selected="yes" VALUE="iris1">Iris 1</OPTION -->
<%
while(rs2.next()){
idmedic = rs2.getInt("idmedic");
NumeMedic = rs2.getString("Nume");
PrenumeMedic = rs2.getString("Prenume");
Sectie = rs2.getString("Sectie");
%>
<OPTION VALUE="<%= idmedic%>"><%= idmedic%>,<%=
NumeMedic%>,<%= PrenumeMedic%>,<%= Sectie%></OPTION>
<%
}
%>
</SELECT>
</td>
</tr>
<tr>
<td align="right">Data consultatie:</td>
<td> <input type="text" name="DataConsultatie" size="30" /></td>
</tr>
<tr>
<td align="right">Diagnostic:</td>
<td> <input type="text" name="Diagnostic" size="30" /></td>
</tr>
<tr>
<td align="right">Medicament:</td>
<td> <input type="text" name="Medicament" size="30" /></td>
</tr>
</table>
<input type="submit" value="Adauga pacientul" />
</form>
<%
}
%>
<br/>
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>

29. Se construieşte pagina sterge_Consultatie.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Consultatie</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<%
String[] s = request.getParameterValues("primarykey");
jb.connect();
jb.stergeDateTabela(s, "consultatie", "idconsultatie");
jb.disconnect();
%>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

30. Se construieşte pagina modifica_Consultatie.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Consultatie</title>
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Consultatie:</h1>
<br/>
<p align="center"><a href="nou_Consultatie.jsp"><b>Adauga o noua consultatie.</b></a> <a
href="index.html"><b>Home</b></a></p>
<form action="m1_Consultatie.jsp" method="post">
<table border="1" align="center">
<tr>
<td><b>Mark:</b></td>
<td><b>IdConsultatie:</b></td>
<td><b>IdPacient:</b></td>
<td><b>NumePacient:</b></td>
<td><b>PrenumePacient:</b></td>
<td><b>Adresa:</b></td>
<td><b>IdMedic:</b></td>
<td><b>NumeMedic:</b></td>
<td><b>PrenumeMedic:</b></td>
<td><b>Sectie:</b></td>
<td><b>DataConsultatie:</b></td>
<td><b>Diagnostic:</b></td>
<td><b>Medicament:</b></td>
</tr>
<%
jb.connect();
ResultSet rs = jb.vedeConsultatie();
long x;
while (rs.next()) {
x = rs.getInt("idconsultatie");
%>
<tr>
<td><input type="checkbox" name="primarykey" value="<%= x%>" /></td><td><%= x%></td>
<td><%= rs.getInt("idpacient_consult")%></td>
<td><%= rs.getString("NumePacient")%></td>
<td><%= rs.getString("PrenumePacient")%></td>
<td><%= rs.getString("Adresa")%></td>
<td><%= rs.getInt("idmedic_consult")%></td>
<td><%= rs.getString("NumeMedic")%></td>
<td><%= rs.getString("PrenumeMedic")%></td>
<td><%= rs.getString("Sectie")%></td>
<td><%= rs.getDate("dataconsultatie")%></td>
<td><%= rs.getString("diagnostic")%></td>
<td><%= rs.getString("medicament")%></td>
<%
}
%>
</tr>
</table><br/>
<p align="center">
<input type="submit" value="Modifica linia">
</p>
</form>
<%
jb.disconnect();%>
<br/>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</p>
</body>
</html>

31. Se construieşte pagina m1_Consultatie.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Consultatie</title>
<link href="table.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center">Tabela Consultatie:</h1>
<br/>
<p align="center"><a href="nou_Consultatie.jsp"><b>Adauga o noua consultatie.</b></a> <a
href="index.html"><b>Home</b></a></p>
<%
jb.connect();
String NumePacient, PrenumePacient, Adresa, NumeMedic, PrenumeMedic, Sectie, Diagnostic,
Medicament, DataConsultatie;

int aux = java.lang.Integer.parseInt(request.getParameter("primarykey"));


ResultSet rs = jb.intoarceConsultatieId(aux);
rs.first();
int id1 = rs.getInt("idpacient_consult");
int id2 = rs.getInt("idmedic_consult");

NumePacient = rs.getString("NumePacient");
PrenumePacient = rs.getString("PrenumePacient");
Adresa = rs.getString("Adresa");
NumeMedic = rs.getString("NumeMedic");
PrenumeMedic = rs.getString("PrenumeMedic");
Sectie = rs.getString("Sectie");
DataConsultatie = rs.getString("DataConsultatie");
Diagnostic = rs.getString("Diagnostic");
Medicament = rs.getString("Medicament");

ResultSet rs1 = jb.vedeTabela("pacienti");


ResultSet rs2 = jb.vedeTabela("medici");
int idpacient, idmedic;

%>
<form action="m2_Consultatie.jsp" method="post">
<table align="center">
<tr>
<td align="right">IdConsultatie:</td>
<td> <input type="text" name="idconsultatie" size="30" value="<%= aux%>" readonly/></td>
</tr>
<tr>
<td align="right">idpacient:</td>
<td>
<SELECT NAME="idpacient">
<%
while (rs1.next()) {
idpacient = rs1.getInt("idpacient");
NumePacient = rs1.getString("Nume");
PrenumePacient = rs1.getString("Prenume");
Adresa = rs1.getString("Adresa");
if (idpacient != id1) {
%>
<OPTION VALUE="<%= idpacient%>"><%= idpacient%>, <%= NumePacient%>,
<%= PrenumePacient%>, <%= Adresa%></OPTION>
<%
} else {
%>
<OPTION selected="yes" VALUE="<%= idpacient%>"><%= idpacient%>, <%=
NumePacient%>, <%= PrenumePacient%>, <%= Adresa%></OPTION>
<%
}
}
%>
</SELECT>

</td>
</tr>
<tr>
<td align="right">idmedic:</td>
<td>
<SELECT NAME="idmedic">
<%
while (rs2.next()) {
idmedic = rs2.getInt("idmedic");
NumeMedic = rs2.getString("Nume");
PrenumeMedic = rs2.getString("Prenume");
Sectie = rs2.getString("Sectie");
if (idmedic != id2) {
%>
<OPTION VALUE="<%= idmedic%>"><%= idmedic%>, <%= NumeMedic%>, <%=
PrenumeMedic%>, <%= Sectie%></OPTION>
<%
} else {
%>
<OPTION selected="yes" VALUE="<%= idmedic%>"><%= idmedic%>, <%=
NumeMedic%>, <%= PrenumeMedic%>, <%= Sectie%></OPTION>
<%
}
}
%>
</SELECT>

</td>
</tr>
<tr>
<td align="right">DataConsultatie:</td>
<td> <input type="text" name="DataConsultatie" size="30" value="<%=
DataConsultatie%>"/></td>
</tr>
<tr>
<td align="right">Diagnostic:</td>
<td> <input type="text" name="Diagnostic" size="30" value="<%= Diagnostic%>"/></td>
</tr>
<tr>
<td align="right">Medicament:</td>
<td> <input type="text" name="Medicament" size="30" value="<%= Medicament%>"/></td>
</tr>
</table><p align="center">
<input type="submit" value="Modifica linia">
</p>
</form>
<p align="center"">
<a href="index.html"><b>Home</b></a>
<br/>
</body>
<%
rs.close();
rs1.close();
rs2.close();
jb.disconnect();
%>
</html>

32. Se construieşte pagina m2_Consultatie.jsp:


<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.lang.*,java.math.*,db.*,java.sql.*, java.io.*, java.util.*"%>
<!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=UTF-8">
<title>Tabela Consultatie</title>
<link href="table.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<jsp:useBean id="jb" scope="session" class="db.JavaBean" />
<jsp:setProperty name="jb" property="*" />
<body>
<h1 align="center"> Tabela Consultatie:</h1>
<br/>
<p align="center"><a href="nou_Consultatie.jsp"><b>Adauga o noua consultatie.</b></a> <a
href="index.html"><b>Home</b></a></p>
<%
jb.connect();
int aux = java.lang.Integer.parseInt(request.getParameter("idconsultatie"));
String idpacient = request.getParameter("idpacient");
String idmedic = request.getParameter("idmedic");
String DataConsultatie = request.getParameter("DataConsultatie");
String Diagnostic = request.getParameter("Diagnostic");
String Medicament = request.getParameter("Medicament");

String[] valori = {idpacient, idmedic, DataConsultatie, Diagnostic, Medicament};


String[] campuri = {"idpacient", "idmedic", "DataConsultatie", "Diagnostic", "Medicament"};
jb.modificaTabela("consultatie", "idconsultatie", aux, campuri, valori);
jb.disconnect();
%>
<h1 align="center">Modificarile au fost efectuate !</h1>
<p align="center">
<a href="index.html"><b>Home</b></a>
<br/>
</body>
</html>

Pentru a rula aplicaţia pe serverul web veţi da click dreapta în cadrul proiectului pe fişierul
index.html şi veţi alege opţiunea Run File (SHIFT + F6).
În cadrul proiectului puteţi îmbunătăţi aplicaţia în ceea ce priveşte design-ul interfeţei
precum şi a funcţionalităţilor oferite. De asemenea, se pot adăuga verificări ale datelor
introduse în aplicaţie (verificări de respectare a formatului atributelor respective - ex. dacă
lucraţi cu date, email-uri, CNP-uri etc.).
Atenţie: dacă copiaţi codul în NetBeans aveţi grijă să îl copiaţi din fişierul .doc (nu din .pdf
deoarece apar probleme mari de formatare a codului) sau din sursele oferite în arhiva
Curs5.zip.
Cei care aveau de rezolvat acest proiect aveţi obligaţia să modificaţi structura
tabelelor(adăugaţi mai multe atribute etc.).
De asemenea, o cerinţă importantă este aceea de a face un utilizator în MySql special
pentru aplicaţia web. Acel utilizator trebuie să aibă drepturi de acces doar pe baza de date
spital.

S-ar putea să vă placă și