You are on page 1of 14

UNIVERSITATEA TEHNICA “GHEORGHE ASACHI” IASI

Facultatea de Automatica si Calculatoare

Programarea independenta de platforma


-proiect-

Ardeleanu Alexandru-Ionut

GRUPA 1302B
- - CUPRINS - - -

ENUNȚ TEMĂ

CAPITOLUL I

1. Scurtă prezentare a tehologiilor folosite

1.1. Tehnologia HTML

1.2. Tehnlologia CSS

1.3. Tehnologie bootstrap

1.4. Tehnologia JSP

CAPITOLUL II

2.1. Proiectare a bazei de date

2.2. Interfața graficaă HTML

2.3. Elemente de programare

CONCLUZII

BIBLIOGRAFIE
ENUNȚ TEM Ă NR. 2:

T2. Sa se scrie o aplicație JSP, cu interfață grafică ce permite calculul retribuției lunare a unui angajat, în funcție de
încadrare

 studii (medii/superioare)
 vechime (0-5/5‐10/10‐15/15‐20/20‐25/peste 25 ani, codificate cu 0 pentru 0-5 ani,1,2, ...)
 departamentul la care activeaza (producție/desfacere)
 acordare bonus lunar (10% din salariul fără bonus)
La salariul brut calculat se va aplica o rata de impozitare de 45%.

Datele vor fi stocate intr-o baza de date cu urmatoarele tabele:

 tabel angajati (index, nume si prenume, studii, vechime, departament)


 tabel salarii brute si bonusuri (index angajat, departament, salariu brut, procent bonus luna curenta
Aplicația poate fi accesată de:

• administrator aplicație – introduce salariații in baza de date; actualizează baza de date

(inserare/stergere/vizualizare pe criterii de selecție precum nume şi prenume angajat, număr

marcă, departament, tip studii)

• director departament – introduce salariul brut si bonusuri lunare pentru angajatii din departamentul propriu ( nu
aredrept de actiune/vizualizare decât pentru departamentul propriu).

• salariați – vizualizează retribuția proprie (bruta, bruta cu bonus si neta) pentru o luna curentă.
CAPITOLUL I

I.1.Scurta prezentare a tehnologilor folosite :


În cadrul proiectului bibliotecă universitară cu resurse on‐line s-au folosit tehnologiile
HTML, CSS, bootstrap și JSP pentru o performanța mai buna și o interfața grafica cât mai acesibila pentru
orice utilizator.

I.1.1.Tehnologia HTML :

Tehnologia HTML este folosita in toate fisierele .jsp este o technologie prin care documente
text, dar și imagini, pot fi afișate pe o singură pagină prin intermediul unui soft specializat, numite
browsere web. Textul și informația dintr-o pagină pot fi aranjat și adnotat cu diverse coduri, tipuri de
metadate și indicații de redare. Se poate astfel sublinia un anumit text, se poate aranja în paragrafe,
se pot introduce imagini sau pot fi folosite limbaje mai sofisticate, afișate hărți sau formulare .

I.1.2 Tehnologia CSS:

CSS sau Cascading Style Sheets este un standard care ajută la formatarea unui document
HTML într-un mod mai simplu și mai creativ. Un fișier CSS se poate atașa unui fișier HTML ca
fișier extern sau chiar în documentul HTML printr-un atribut. Modul în care este afișat conținutul
unui site poate să fie controlat prin CSS.

I.1.3 Tehnologia bootstrap:

Framework-urile de tip Bootstrap se folosesc de catre acei web designeri si dezvoltatori


front-end care sunt familiarizati cu HTML si CSS.

I.1.4 Tehnologia JSP:

JavaServerPages este o tehnologie bazată pe limbajul Java dezvoltată de Sun şi care îmbină
perfect conţinutul static al paginilor Web cu informaţiile dinamice, citite funcţie de diferite reguli sau
date aflate pe diferite suporturi de stocare (în special baze de date). Printre avantajele folosirii JSP
putem enumera dezvoltarea paginilor în orice mediu de dezvoltare, şi indiferent de platformă,
posibilitatea de interacţiune cu obiecte server dar şi posibilitatea de extindere a limbajului cu marcaje
(tag-uri) customizate după necesităţi.
CAPITOLUL II

2.1. Proiectare a bazei de date:

Baza de date este proiectata cu ajutorul tehnologiei xamp si este denumita ardeleanu :

Tabela departament:

Tabela grad:

Tabela salarii:

Tabela studii:
Tabela user:

Tabela vechime:

2.2. Interfața graficaă HTML:


2.3. Elemente de programare:

Elemente de programare s-au folosit atat in sectiunea de utilizator cat si in cea de


administrator prelucrand date din formulare si le transefera atat in baza de date cat si din baza de date
utilizand intergari.

Index.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link
href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
type="text/css" rel="stylesheet" />
<link
href='http://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400italic,500,500it
alic,700,700italic'
type='text/css' rel='stylesheet' />
<link href="css/main.css" type="text/css" rel="stylesheet" />
<title>Log In</title>
<head>
<body>
<div class="logo_pozition">
<h1>Calculul retributiei lunare</h1>
</div>
<form method="post" action="log_db.jsp" style="min-height: 371px;">
<div class="form_poz">

<input class="formular" type="email" placeholder="Email"


name="email_user">

</div>

<div class="form_poz">

<input class="formular" type="password" placeholder="Parola"


name="parola_user">

</div>

<div class="form_poz">
<button class="b_login">
Login
</button>
</div>
</form>
<%@include file="struct/footer.jsp" %>
</body>
</html>

log_db.jsp
<!DOCTYPE html PUBLIC >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link
href="http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
type="text/css" rel="stylesheet" />
<link
href='http://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400italic,500,500it
alic,700,700italic'
type='text/css' rel='stylesheet' />
<link href="css/main.css" type="text/css" rel="stylesheet" />
<link
href='http://fonts.googleapis.com/css?family=Lato:100,300,400,700,900'
rel='stylesheet' type='text/css'>
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.0.min.js"></script>
<title>Editare Angajat</title>
<style type="text/css">
.error_input { border: 1px solid red!important; }
.succes_input { border: 1px solid #039252!important; }
label.error{
display: none !important;
}
</style>
</head>
<body>
<%@ include file="struct/header.jsp" %>
<%@ page import ="java.sql.*" %>
<%
String email = new String("");
String password = new String("");
String nume = new String("");
String grad = new String("");
String studii = new String("");
email = request.getParameter("email_user");
password = request.getParameter("parola_user");

String email_data = new String("");


String pass_data = new String("");
String display_m= new String("");
String display_a= new String("");
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/ardeleanu",
"ardeleanu", "parola");
Statement stmt = con.createStatement();
String sql = "SELECT * FROM user where email= '"+email+"' and parola='"+password+"' limit
1";
ResultSet rs = stmt.executeQuery(sql);
int ok=0;
if(rs.first()){
nume = rs.getString("nume_prenume");
session.setAttribute("departament", rs.getString("departament"));
session.setAttribute("vechime", rs.getString("vechime"));
session.setAttribute("grad", rs.getString("tip_user"));
session.setAttribute("studii", rs.getString("studii"));

session.setAttribute("nume", nume);

if(rs.getString("tip_user").equals("Admin"))
{
session.setAttribute("nume", nume);
response.sendRedirect("admin.jsp");

}
else if(rs.getString("tip_user").equals("Sef Deprtament"))
{

display_m="style='display:none;'";
session.setAttribute("display_m", display_m);

response.sendRedirect("manager.jsp");
}
else if(rs.getString("tip_user").equals("Angajat"))
{
session.setAttribute("nume", nume);

display_a="style='display:none;'";
session.setAttribute("display_a", display_a);
response.sendRedirect("angajat.jsp");
}

else
{

response.sendRedirect("index.jsp");

}
rs.close();
rs = null;
stmt.close();
stmt = null;
} else {
out.println("Invalid password <a href='index.jsp' style='color:black'>try again</a>");
}
%>
<%@ include file="struct/footer.jsp" %>

Adauga-angajat-db.jsp
<%@ page import="java.sql.*"%>

<%
String nume = new String("");
String studii = new String("");
String vechime = new String("");
String departament = new String("");
String grad = new String("");
String email = new String("");
String parola = new String("");

nume= request.getParameter("nume");
studii= request.getParameter("studii");
vechime= request.getParameter("vechime");
departament= request.getParameter("departament");
grad= request.getParameter("grad");
email= request.getParameter("email");
parola= request.getParameter("parola");

Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/ardeleanu",
"ardeleanu", "parola");
Statement st = con.createStatement();

int i = st.executeUpdate ("INSERT INTO `user` (`nume_prenume`, `email`, `parola`,


`tip_user`, `studii`, `vechime`, `departament`) VALUES ('" + nume + "', '" + email + "','" +
parola + "','" + grad + "','" + studii + "','" + vechime + "','" + departament + "' )");
if(i>0)
{
response.sendRedirect("succes-add.jsp");
}
else
{
response.sendRedirect("adauga-angajat.jsp");
}

%>

CONCLUZII:

- proiectul poate fi folosit la gestionare și organizarea informaților intr-o firma.


- acest proiect mai poate fi extins și pentru alte aplicați.
BIBLIOGRAFIE:

- laboratoarele de la disciplina PIP - http://pip.ac.tuiasi.ro/


- W3Schools Online Web Tutorials - http://www.w3schools.com/
- The Complete CSS tutorial - http://www.w3schools.com/
- JSP Tutorial - http://www.jsptutorial.net/

You might also like