Università di Bergamo Facoltà di Ingegneria. Applicazioni Internet B. Paolo Salvaneschi B6_4 V1.7. JSP parte D

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Università di Bergamo Facoltà di Ingegneria. Applicazioni Internet B. Paolo Salvaneschi B6_4 V1.7. JSP parte D"

Transcript

1 Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B6_4 V1.7 JSP parte D Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale e per supporto a lezioni universitarie. Ogni altro uso è riservato, e deve essere preventivamente autorizzato dall autore. Sono graditi commenti o suggerimenti per il miglioramento del materiale B6 JSP Paolo Salvaneschi 1

2 INDICE JSP e utilizzo CSS JavaScript Accesso ai database Data base e fonte dati ODBC Istanza DataSource e Driver JDBC- ODBC Lettura da DataBase Sql tag library Gestione DataBase B6 JSP Paolo Salvaneschi 2 B6 JSP Paolo Salvaneschi 2

3 JSP e utilizzo CSS JavaScript CSS index.jsp response.jsp B6 JSP Paolo Salvaneschi 3 B6 JSP Paolo Salvaneschi 3

4 JSP e utilizzo CSS JavaScript body h2 dt dd {background-color : #e0e0e0;} {font-family: Arial; font-size: 20pt; color: #990000; background-color : white; font-weight: bold; text-decoration: underline } {font-family: Arial; font-size: 16pt; color: blue} {font-family: Arial; font-size: 12pt; font-weight: bold; color: red} B6 JSP Paolo Salvaneschi 4 B6 JSP Paolo Salvaneschi 4

5 JSP e utilizzo CSS JavaScript <%@ page contenttype="text/html" %> <%@ taglib prefix="c" uri=" %> <html><head> <title>user Info Response</title> <link type="text/css" rel="stylesheet" href="esterno.css"> </head> <body bgcolor="white"> <h2>dati ricevuti</h2> <dl> <dt>nome:</dt> <dd> <c:out value="${param.nome}" /> </dd> <dt>cognome:</dt><dd><c:out value="${param.cognome}" /></dd> <dt>vini preferiti:</dt> <dd> <c:foreach items="${paramvalues.vino}" var="current"> <c:out value="${current}" /><br> </c:foreach> </dd> </dl> </body> B6 JSP Paolo Salvaneschi 5 B6 JSP Paolo Salvaneschi 5

6 JSP e utilizzo CSS JavaScript JavaScript Se entrambi i campi sono caricati index.jsp index.jsp response.jsp B6 JSP Paolo Salvaneschi 6 B6 JSP Paolo Salvaneschi 6

7 JSP e utilizzo CSS JavaScript <HTML> <HEAD> <TITLE></TITLE> <SCRIPT language="javascript"> function isblank(s) { for(var i = 0; i < s.length; i++) {var c = s.charat(i); if ((c!= ' ') && (c!= '\n') && (c!= '\t')) return false;} return true; } function verify(f) { var msg; var empty_fields = ""; for(var i = 0; i < f.length; i++) { var e = f.elements[i]; Il controllo dell input è eseguito lato client COME ESEMPIO LEZIONE JAVASCRIPT Dal punto di vista di JSP questo è testo template B6 JSP Paolo Salvaneschi 7 B6 JSP Paolo Salvaneschi 7

8 Accesso ai database DB impiegati Driver JDBC-ODBC O D B C J D B C Applicazione B r o w s e r DB Access Tomcat I E Server Client B6 JSP Paolo Salvaneschi 8 B6 JSP Paolo Salvaneschi 8

9 Data base e fonte dati ODBC DB impiegati Il database DBimpiegati.mdb è memorizzato in: C:\DB_installati\DBimpiegati.mdb B6 JSP Paolo Salvaneschi 9 B6 JSP Paolo Salvaneschi 9

10 Data base e fonte dati ODBC DB impiegati Caricamento del database DBimpiegati.mdb B6 JSP Paolo Salvaneschi 10 B6 JSP Paolo Salvaneschi 10

11 Data base e fonte dati ODBC Creazione di una fonte dati ODBC Per utilizzare un driver JDBC-ODBC, la base di dati deve essere definita come fonte dati ODBC" In Windows (con Access e xxx.mdb definito) Pannello di controllo strumenti di amministrazione ODBC data sources. E associato un nome della fonte dati ODBC (DSN -- Data Source Name) al file che contiene il Database O D B C B6 JSP Paolo Salvaneschi 11 B6 JSP Paolo Salvaneschi 11

12 Data base e fonte dati ODBC -Pannello di controllo -strumenti di amministrazione -sorgenti dati ODBC Creazione della fonte dati ODBC O D B C B6 JSP Paolo Salvaneschi 12 B6 JSP Paolo Salvaneschi 12

13 Data base e fonte dati ODBC O D B C B6 JSP Paolo Salvaneschi 13 B6 JSP Paolo Salvaneschi 13

14 Data base e fonte dati ODBC O D B C B6 JSP Paolo Salvaneschi 14 B6 JSP Paolo Salvaneschi 14

15 Istanza DataSource e Driver JDBC-ODBC J D B C Applicazione B6 JSP Paolo Salvaneschi 15 B6 JSP Paolo Salvaneschi 15

16 Istanza DataSource e Driver JDBC-ODBC Interfaccia DataSource e driver JDBC JDBC è una interfaccia javax.sql.datasource realizzata da classi driver L'interfaccia è standard, mentre i driver contengono le specificità dei singoli DBMS J D B C B6 JSP Paolo Salvaneschi 16 B6 JSP Paolo Salvaneschi 16

17 Istanza DataSource e Driver JDBC-ODBC Esistono quattro tipi di driver 1. Bridge JDBC-ODBC: richiama un driver ODBC, che deve essere disponibile sul client 2. Driver nativo sul client: richiama un componente proprietario sul client 3. Driver puro Java con server intermedio ("middleware server"): comunica via protocollo di rete con il server intermedio 4. Driver puro Java, con connessione al DBMS: interagisce direttamente con il DBMS J D B C B6 JSP Paolo Salvaneschi 17 B6 JSP Paolo Salvaneschi 17

18 Istanza DataSource e Driver JDBC-ODBC JDBC ODBC Bridge JDBC Native Bridge Applicazione JDBC API Driver manager JDBC Net Bridge Driver JDBC Java Driver ODBC API native Client Server di rete RDBMS DB B6 JSP Paolo Salvaneschi 18 B6 JSP Paolo Salvaneschi 18

19 Istanza DataSource e Driver JDBC-ODBC <?xml version="1.0" encoding="iso "?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <description> </description> <!-- Used by the JSTL database actions --> <context-param> <param-name> Creazione di un istanza DataSource Un modo possibile (con un unico Data Base): Attraverso un parametro di contesto javax.servlet.jsp.jstl.sql.datasource </param-name> <param-value> jdbc:odbc:dbimpiegati,sun.jdbc.odbc.jdbcodbcdriver </param-value> </context-param> </web-app> B6 JSP Paolo Salvaneschi 19 B6 JSP Paolo Salvaneschi 19

20 Istanza DataSource e Driver JDBC-ODBC 1 2 jdbc:odbc:dbimpiegati,sun.jdbc.odbc.jdbcodbcdriver, nome_utente,password Valore del parametro di contesto: quattro campi separati da virgole: 1 URL JDBC identifica il DB 2 Nome classe di un driver JDBC identifica il driver Nome utente per accesso a DB Password per accesso a DB B6 JSP Paolo Salvaneschi 20 B6 JSP Paolo Salvaneschi 20

21 Istanza DataSource e Driver JDBC-ODBC Se non viene fornita un origine dati specifica nelle azioni JSTL orientate al database, mediante l attributo datasource: Le azioni cercano un origine di default in: Scope di pagina->di richiesta->di sessione->di applicazione ->parametro di contesto B6 JSP Paolo Salvaneschi 21 B6 JSP Paolo Salvaneschi 21

22 Istanza DataSource e Driver JDBC-ODBC Il driver JDBC ODBC è già incluso nell SDK java In altre situazioni il driver deve essere scaricato e copiato nella cartella Web-inf/lib B6 JSP Paolo Salvaneschi 22 B6 JSP Paolo Salvaneschi 22

23 Lettura da DataBase B6 JSP Paolo Salvaneschi 23 B6 JSP Paolo Salvaneschi 23

24 Lettura da DataBase B6 JSP Paolo Salvaneschi 24 B6 JSP Paolo Salvaneschi 24

25 Lettura da DataBase <html><head><title>search in Employee Database</title></head> <body bgcolor="white"> Inserire il valore di uno o più campi. <form action="find.jsp" method="get"> <table> <tr><td>nome:</td> <td><input type="text" name="firstname"></td></tr> <tr> <td>cognome:</td> <td><input type="text" name="lastname"></td></tr> <tr><td>divisione:</td> <td><input type="text" name="dept"></td></tr> <tr><td><input type="submit" value="cerca"></td></tr> </table> </form> </body></html> Applicazione B6 JSP Paolo Salvaneschi 25 B6 JSP Paolo Salvaneschi 25

26 Lettura da DataBase taglib prefix="sql" uri=" %> <%-- Execute query, with wildcard characters added to the parameter values used in the search criteria--%> <sql:query var="emplist" scope="request"> SELECT * FROM Employee WHERE FirstName LIKE? AND LastName LIKE? AND Dept LIKE? ORDER BY LastName <sql:param value="%${param.firstname}%" /> <sql:param value="%${param.lastname}%" /> <sql:param value="%${param.dept}%" /> </sql:query> <jsp:forward page="list.jsp" />? Segnaposto Le istruzioni <sql:param sostituiscono nell ordine i segnaposto %carl% giancarlo, carletto, Nota: se il campo firstname della form è vuoto, la query diventa WHERE FirstName LIKE %null% (LIKE qualsiasi stringa) (LIKE ab%ba_ : qualunque stringa che inizia con ab e ha ba prima dell ultima posizione) B6 JSP Paolo Salvaneschi 26 B6 JSP Paolo Salvaneschi 26

27 Lettura da DataBase page contenttype="text/html" %> taglib prefix="c" uri=" %> taglib prefix="sql" uri=" %> <html> <head> <title>ricerca da DataBase</title> </head> <body bgcolor="white"> <c:choose> <c:when test="${emplist.rowcount == 0}"> Nessun impiegato è stato trovato </c:when>. Nota: emplist è disponibile poiché è nello scope request La pagina è stata attivata con forward (stessa request) B6 JSP Paolo Salvaneschi 27 B6 JSP Paolo Salvaneschi 27

28 Lettura da DataBase <c:otherwise> <p>sono stati trovati i seguenti impiegati:</p> <table border="1"> <th>nome</th><th>cognome</th> <th>divisione</th><th>data di assunzione</th> <th> </th> <c:foreach items="${emplist.rows}" var="row"> <tr> <td><c:out value="${row.firstname}" /></td> <td><c:out value="${row.lastname}" /></td> <td><c:out value="${row.dept}" /></td> <td><c:out value="${row.empdate}" /></td> <td><c:out value="${row. addr}" /></td> </tr> </c:foreach> </table> Nomi dei campi nel DB </c:otherwise> </c:choose> </body></html> B6 JSP Paolo Salvaneschi 28 B6 JSP Paolo Salvaneschi 28

29 Sql tag library Sql tag library <sql:query> <sql:update> <sql:param> <sql:dateparam> <sql:setdatasource> <sql:transaction> B6 JSP Paolo Salvaneschi 29 B6 JSP Paolo Salvaneschi 29

30 Sql tag library <sql:query> [datasource= datasource ] [maxrows= maxrows ] [startrow= index ] var= var [scope= page request session application ]> Istruzione SQL SELECT Azioni <sql:param> </sql:query> Esegue SQL SELECT. Può contenere? come segnaposto di valori assegnati con <sql:param> nidificate B6 JSP Paolo Salvaneschi 30 B6 JSP Paolo Salvaneschi 30

31 Sql tag library datasource maxrows startrow var scope Origine dati da utilizzare Numero max di righe da includere nel risultato (se omesso o 1: tutte) Indice con base 0 della prima riga da includere nel risultato Nome della variabile nella quale è restituito il risultato della select. Bean di tipo javax.servlet.jsp.jsti.sql.result Scope della variabile B6 JSP Paolo Salvaneschi 31 B6 JSP Paolo Salvaneschi 31

32 Sql tag library Proprietà del Bean: javax.servlet.jsp.jsti.sql.result B6 JSP Paolo Salvaneschi 32 B6 JSP Paolo Salvaneschi 32

33 <sql:update> Sql tag library Esegue SQL INSERT, UPDATE o DELETE Anche le istruzioni SQL DDL (CREATE TABLE) Salva il numero di righe influenzate in una variabile di scope Può contenere? come segnaposto di valori assegnati con <sql:param> nidificate <sql:update> DELETE FROM Employee WHERE UserName =? <sql:param value="${param.username}" /> </sql:update> B6 JSP Paolo Salvaneschi 33 B6 JSP Paolo Salvaneschi 33

34 Sql tag library <sql:update> [datasource= datasource ] [var= var [scope= page request session application ] ]> Istruzione SQL INSERT, UPDATE o DELETE Azioni <sql:param> </sql:update> B6 JSP Paolo Salvaneschi 34 B6 JSP Paolo Salvaneschi 34

35 <sql:param> Sql tag library Azione nidificata per assegnare un valore ad un segnaposto in <sql:query> e <sql:update> <sql:dateparam> Idem per assegnare data-ora a un segnaposto <sql:setdatasource> Imposta la variabile di configurazione dell origine dati (negli esempi precedenti è impostata come variabile di contesto in Web-inf) <sql:transaction> Definisce un contesto di transazione per un gruppo di azioni query, update B6 JSP Paolo Salvaneschi 35 B6 JSP Paolo Salvaneschi 35

36 Gestione DataBase Elenco completo B6 JSP Paolo Salvaneschi 36 B6 JSP Paolo Salvaneschi 36

37 Gestione DataBase Ricerca B6 JSP Paolo Salvaneschi 37 B6 JSP Paolo Salvaneschi 37

38 Gestione DataBase Inserimento B6 JSP Paolo Salvaneschi 38 B6 JSP Paolo Salvaneschi 38

39 Gestione DataBase Cancellazione B6 JSP Paolo Salvaneschi 39 B6 JSP Paolo Salvaneschi 39

40 Gestione DataBase View Forward Forward Scope ObjectScope Object submit submit forward submit forward Controller + Model Http request Data flow B6 JSP Paolo Salvaneschi 40 B6 JSP Paolo Salvaneschi 40

41 Gestione DataBase <html> <head> <title></title> </head> <frameset cols="200,*"> <frame name="indice" src="indice.htm"> <frame name="contenuto" src="contenuto.htm"> </frameset> </html> <html> <head><title>apri nuova finestra</title></head> <body bgcolor="#eeeeee"> <h1>gestione<br>impiegati</h1> <p><a href="find_all.jsp" target="contenuto">elenco COMPLETO </a> </p><p><a href="leggi.htm" target="contenuto"> RICERCA</a></p> <p><a href="inserisci.htm" target="contenuto">inserimento</a></p> <p><a href="cancella.htm" target="contenuto">cancellazione</a></p> </body> </html> Struttura a frame B6 JSP Paolo Salvaneschi 41 B6 JSP Paolo Salvaneschi 41

42 Gestione DataBase <html><head><title>leggi</title></head> <body bgcolor="white"> Inserire il valore di uno o più campi. <form action="find.jsp" method="get"> <table> <tr><td>nome:</td> <td><input type="text" name="firstname"></td></tr> <tr><td>cognome:</td> <td><input type="text" name="lastname"></td></tr> <tr><td>divisione:</td> <td><input type="text" name="dept"></td></tr> <tr><td><input type="submit" value="cerca"></td></tr> </table> </form> </body></html> B6 JSP Paolo Salvaneschi 42 B6 JSP Paolo Salvaneschi 42

43 Gestione DataBase <html><head><title>inserisci</title></head> <body bgcolor="white"> <form action="insert.jsp" method="get"> <table> <tr><td>username (key):</td><td><input type="text" name="username"></td></tr> <tr><td>password:</td><td><input type="text" name="password"></td></tr> <tr><td>nome:</td><td><input type="text" name="firstname"></td></tr> <tr><td>cognome:</td><td><input type="text" name="lastname"></td></tr> <tr><td>divisione:</td><td><input type="text" name= dept"></td></tr> <tr><td>data di assunzione:</td><td><input type="text" name="empdate"></td></tr> <tr><td> </td><td><input type="text" name=" addr"></td></tr> <tr><td><input type="submit" value="inserisci"></td></tr> </table> </form> </body> </html> B6 JSP Paolo Salvaneschi 43 B6 JSP Paolo Salvaneschi 43

44 Gestione DataBase <html><head><title>cancella</title></head> <body bgcolor="white"> <form action="delete.jsp" method="get"> <table> <td>user Name (key):</td> <td><input type="text" name="username"> </td> </tr> <tr> <td colspan=2><input type="submit" value="cancella"></td> </tr> </table> </form> </body> </html> B6 JSP Paolo Salvaneschi 44 B6 JSP Paolo Salvaneschi 44

45 Gestione DataBase taglib prefix="sql" uri=" %> <sql:query var="emplist" scope="request"> SELECT * FROM Employee ORDER BY LastName </sql:query> <jsp:forward page="list.jsp" /> B6 JSP Paolo Salvaneschi 45 B6 JSP Paolo Salvaneschi 45

46 Gestione DataBase taglib prefix="sql" uri=" %> <%-- Execute query, with wildcard characters added to the parameter values used in the search criteria --%> <sql:query var="emplist" scope="request"> SELECT * FROM Employee WHERE FirstName LIKE? AND LastName LIKE? AND Dept LIKE? ORDER BY LastName <sql:param value="%${param.firstname}%" /> <sql:param value="%${param.lastname}%" /> <sql:param value="%${param.dept}%" /> </sql:query> <jsp:forward page="list.jsp" /> B6 JSP Paolo Salvaneschi 46 B6 JSP Paolo Salvaneschi 46

47 Gestione DataBase page contenttype="text/html" %> taglib prefix="c" uri=" %> taglib prefix="sql" uri=" %> <html><head><title>visualizza i risultati di una ricerca su DB</title></head> <body bgcolor="white"> <c:choose> Nello scope di request <c:when test="${emplist.rowcount == 0}"> Nessun impiegato è stato trovato </c:when> <c:otherwise> <p>sono stati trovati i seguenti impiegati:</p> <table border="1"> <th>username (key)</th> <th>nome</th> <th>cognome</th> <th>divisione</th> <th>data di assunzione</th> <th> </th> B6 JSP Paolo Salvaneschi 47 B6 JSP Paolo Salvaneschi 47

48 Gestione DataBase.. <c:foreach items="${emplist.rows}" var="row"> <tr> <td><c:out value="${row.username}" /></td> <td><c:out value="${row.firstname}" /></td> <td><c:out value="${row.lastname}" /></td> <td><c:out value="${row.dept}" /></td> <td><c:out value="${row.empdate}" /></td> <td><c:out value="${row. addr}" /></td> </tr> </c:foreach> </table> </c:otherwise> </c:choose> </body> </html> B6 JSP Paolo Salvaneschi 48 B6 JSP Paolo Salvaneschi 48

49 Gestione DataBase taglib prefix="sql" uri=" %> taglib prefix="c" uri=" %> taglib prefix="fmt" uri=" %> <%--Se uno o più campi sono vuoti allora segnala--%> <c:choose> <c:when test="${empty param.username empty param.password empty param.firstname empty param.lastname empty param.dept empty param.empdate empty param. addr }"> <jsp:forward page="segnala.jsp"> <jsp:param name="segnalazione" value="inserire tutti i valori dei campi"/> </jsp:forward> </c:when>.. L elaborazione è interrotta Il valore della variabile è null OR stringa vuota (" ") B6 JSP Paolo Salvaneschi 49 B6 JSP Paolo Salvaneschi 49

50 <%-- altrimenti leggi righe; se riga esistente allora segnala, altrimenti inserisci--%> <c:otherwise> <sql:query var="emplist"> SELECT * FROM Employee WHERE UserName =? <sql:param value="${param.username}" /> </sql:query> <c:choose> <c:when test="${emplist.rowcount!= 0}"> <jsp:forward page="segnala.jsp"> <jsp:param name="segnalazione" value="l'impiegato è già esistente"/> </jsp:forward> </c:when> <c:otherwise> <%-- Deal with the date values: parse the employment date and create a Date object from it, and create a new variable to hold the currentdate.--%> <fmt:parsedate value="${param.empdate}" var="parsedempdate" pattern="dd-mm-yy" /> B6 JSP Paolo Salvaneschi 50 B6 JSP Paolo Salvaneschi 50 Gestione DataBase

51 <sql:update> INSERT INTO Employee (UserName, Password, FirstName, LastName, Dept, EmpDate, Addr) VALUES(?,?,?,?,?,?,?) <sql:param value="${param.username}" /> <sql:param value="${param.password}" /> <sql:param value="${param.firstname}" /> <sql:param value="${param.lastname}" /> <sql:param value="${param.dept}" /> <sql:dateparam value="${parsedempdate}" type="date" /> <sql:param value="${param. addr}" /> </sql:update> <jsp:forward page="segnala.jsp"> <jsp:param name="segnalazione" value="l'impiegato è stato inserito"/> </jsp:forward> </c:otherwise> </c:choose> </c:otherwise> </c:choose> Gestione DataBase B6 JSP Paolo Salvaneschi 51 B6 JSP Paolo Salvaneschi 51

52 Gestione DataBase. taglib prefix="fmt" uri=" %> Nota Formattazione data. <%-- Deal with the date values: parse the employment date and create a Date object from it, and create a new variable to hold the current date.--%> <fmt:parsedate value="${param.empdate}" var="parsedempdate" pattern="dd-mm-yy" /> Effettua il parsing di una data e orario formattati secondo la regola definita in pattern <sql:dateparam value="${parsedempdate}" type="date" /> type -- tipo SQL in cui convertire il valore B6 JSP Paolo Salvaneschi 52 B6 JSP Paolo Salvaneschi 52

53 Gestione DataBase taglib prefix="sql" uri=" %> taglib prefix="c" uri=" %> <%-- leggi riga (UserName è chiave); se riga non esistente allora segnala, altrimenti cancella--%> <sql:query var="emplist"> SELECT * FROM Employee WHERE UserName =? <sql:param value="${param.username}" /> </sql:query> <c:choose> <c:when test="${emplist.rowcount == 0}"> <jsp:forward page="segnala.jsp"> <jsp:param name="segnalazione" value="l'impiegato non è stato trovato"/> </jsp:forward> </c:when> B6 JSP Paolo Salvaneschi 53 B6 JSP Paolo Salvaneschi 53

54 Gestione DataBase.. <c:otherwise> <sql:update> DELETE FROM Employee WHERE UserName =? <sql:param value="${param.username}" /> </sql:update> <jsp:forward page="segnala.jsp"> <jsp:param name="segnalazione" value="l'impiegato è stato cancellato"/> </jsp:forward> </c:otherwise> </c:choose> B6 JSP Paolo Salvaneschi 54 B6 JSP Paolo Salvaneschi 54

55 Gestione DataBase page contenttype="text/html" %> taglib prefix="c" uri=" %> <HTML> <HEAD> </HEAD> <BODY> <HR> <BR> <H2><c:out value="${param.segnalazione}" /> <BR><BR> <HR> </BODY> </HTML> B6 JSP Paolo Salvaneschi 55 B6 JSP Paolo Salvaneschi 55

56 Gestione DataBase Limitazioni della realizzazione: DB Access JDBC-ODBC Pool di connessioni B6 JSP Paolo Salvaneschi 56 B6 JSP Paolo Salvaneschi 56

Università di Bergamo Facoltà di Ingegneria. Applicazioni Internet B. Paolo Salvaneschi B6_1 V1.7. JSP parte A

Università di Bergamo Facoltà di Ingegneria. Applicazioni Internet B. Paolo Salvaneschi B6_1 V1.7. JSP parte A Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B6_1 V1.7 JSP parte A Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale e

Dettagli

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page» Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti

Dettagli

Laboratorio di sistemi JSTL e database Jsp [NetBeans]

Laboratorio di sistemi JSTL e database Jsp [NetBeans] Elenco dei film ottenuti usando la libreria JSTL 1.1 elenco_film_jstl.pdf Pag. 1/18 Cozzetto Inserisco i dati di un film. Prima dell'inserimento i dati vengono confrontati con quelli della tabella film_tbl

Dettagli

Introduzione a JSP (Java Server Pages) MC 2005

Introduzione a JSP (Java Server Pages) MC 2005 Introduzione a JSP (Java Server Pages) MC 2005 Cosa è JSP JSP è una tecnologia per lo sviluppo di pagine web con contenuti dinamici Miglioramento rispetto alle CGI (modello multithread) Indipendenza dalla

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

Caricamento della classe driver. Apertura della connessione. DriverManager.getConnection() Creazione di uno statement

Caricamento della classe driver. Apertura della connessione. DriverManager.getConnection() Creazione di uno statement JDBC Programmazione in Ambienti Distribuiti V 1.4 Marco Torchiano 2006 Uso di JDBC Caricamento della classe driver Class.forName() Apertura della connessione DriverManager.getConnection() Creazione di

Dettagli

PHP e MySQL. Scripting server-side per accesso a DB MySQL

PHP e MySQL. Scripting server-side per accesso a DB MySQL PHP e MySQL Scripting server-side per accesso a DB MySQL Connessione a un DB MySQL Prima di accedere ai dati è necessario creare una connessione con il DB In PHP si utilizza la funzione mysql_connect,

Dettagli

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Contatti BASI DI DATI http://www.diee.unica.it/~giacinto/bd Esercitazione su PHP & MySQL! Roberto Tronci! e-mail: roberto.tronci@diee.unica.it!

Dettagli

Lezione 9. Applicazioni tradizionali

Lezione 9. Applicazioni tradizionali Lezione 9 Applicazioni tradizionali Pag.1 Sommario Concetti trattati in questa lezione: SQL nel codice applicativo Cursori API native ODBC Pag.2 SQL nel codice applicativo I comandi SQL possono essere

Dettagli

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet

1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet 1 Gestione dell utente connesso in sessione con Java Server Pages, Java Beans, Servlet Controllo dell utente connesso al sito tramite JSP, Java Beans e Servlet. Ciò che ci proponiamo di fare è l accesso

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

JUG Ancona Italy. JSP 2.0: Tag Library. Matteo Piccinini Web Developer

JUG Ancona Italy. JSP 2.0: Tag Library. Matteo Piccinini Web Developer JUG Ancona Italy JSP 2.0: Tag Library Matteo Piccinini Web Developer Servlet Codice Java che viene eseguito nel server per produrre un contenuto Logica applicativa del programmatore Gestione grafica passa

Dettagli

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Laboratorio Progettazione Web PHP e FORMs HTML Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Struttura Applicazioni Web Browser Web HTTP Server Web API Dati Presentation Application Storage

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Dettagli

Corso di Informatica Modulo T3 B2 - Database in rete

Corso di Informatica Modulo T3 B2 - Database in rete Corso di Informatica Modulo T3 B2 - Database in rete 1 Prerequisiti Programmazione web Applicazione web Modello OSI Architettura client/server Conoscenze generali sui database Tecnologia ADO in Visual

Dettagli

JDBC di base. Le classi/interfacce principali di JDBC

JDBC di base. Le classi/interfacce principali di JDBC JDBC di base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte completa indipendenza del codice dal tipo di database o di

Dettagli

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server 2) Il Server richiama l'interprete PHP il quale esegue i comandi contenuti nel file.php specificato nell'attributo action del tag form creando un file HTML sulla base dei dati inviati dall utente 1) Il

Dettagli

JDBC. A. Bechini 2004. Accesso a DataD con Java

JDBC. A. Bechini 2004. Accesso a DataD con Java JDBC Accesso a DataD atabase ase con Java Utilizzo di DB da applicazioni esterne Un DB contiene e gestisce dati, importanti per varie operazioni supportate da applicazioni software Come può un applicazione

Dettagli

Una metodologia di progettazione di applicazioni web centrate sui dati

Una metodologia di progettazione di applicazioni web centrate sui dati Una metodologia di progettazione di applicazioni web centrate sui dati A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 1 / 2 0 1 2 Progettazione logica di un sito web centrato sui dati Si

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

Dettagli

Sicurezza Informatica: Tecniche di SQL INJECTION

Sicurezza Informatica: Tecniche di SQL INJECTION Sicurezza Informatica: Tecniche di SQL INJECTION Pietro Bongli Aprile 2004 N.B. L'informazione contenuta in queste pagine è divulgata per scopi puramente didattici e non per ni illegali. Structured Query

Dettagli

Note pratiche sullo sviluppo di servlet (I)

Note pratiche sullo sviluppo di servlet (I) Note pratiche sullo sviluppo di servlet (I) Nel caso in cui sulla macchina locale (PC in laboratorio/pc a casa/portatile) ci sia a disposizione un ambiente Java (con compilatore) e un editor/ambiente di

Dettagli

Obiettivo dell esercitazione

Obiettivo dell esercitazione Database e Web - Esercitazioni ASP - Andrea Proli proliand@csr.unibo.it Laboratorio di Basi di Dati A.A. 2005/2006 Obiettivo dell esercitazione L obiettivo finale dell esercitazione è quello di creare

Dettagli

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC

JDBC: Introduzione. Java Database Connectivity (JDBC): parte 1. Schema dei legami tra le classi principali. Principali classi/interfacce di JDBC JDBC: Introduzione Java Database Connectivity (JDBC): parte 1 Gianluca Moro DEIS - Università di Bologna gmoro@deis.unibo.it Java Database Connectivity è il package Java per l accesso a database relazionali

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Le tecnologie software Internet

Le tecnologie software Internet Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B Paolo Salvaneschi B2_1 V1.7 Le tecnologie software Internet Standard aperti / Sun Java Il contenuto del documento è liberamente utilizzabile

Dettagli

Java Server Pages (JSP) JSP o Servlet? Java Server Pages (JSP) Java Server Pages Costituiscono un estensione della tecnologia delle servlet

Java Server Pages (JSP) JSP o Servlet? Java Server Pages (JSP) Java Server Pages Costituiscono un estensione della tecnologia delle servlet Java Server Pages (JSP) Introduzione alle JSP Linguaggio di scripting lato server HTML-embedded Una pagina JSP contiene sia HTML sia codice Il client effettua la richiesta per la pagina JSP La parte HTML

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali

Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali Docente: Carlo Drioli 31 marzo 2015 Esempio I prova infracorso Esercizio 1 Si consideri un applicazione per la gestione di menu

Dettagli

Data Base in Internet

Data Base in Internet Data Base in Internet Esempio di applicazione ASP Prof. Claudio Maccherani Un applicazione che interroghi un database remoto in un server Web è scritta in ASP (Active Server Page) se piattaforma NT / IIS

Dettagli

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni Tomcat & Servlet Programmazione in Ambienti Distribuiti V 1.2 Marco Torchiano 2005 Contenuti Tomcat Applicazioni Web Struttura Sviluppo Deployment Servlet JSP Uso delle sessioni 1 Tomcat Tomcat è un contenitore

Dettagli

Guida all Installazione del ProxyFatturaPA

Guida all Installazione del ProxyFatturaPA i Guida all Installazione del ii Copyright 2005-2014 Link.it srl iii Indice 1 Introduzione 1 2 Fase Preliminare 1 3 Esecuzione dell Installer 1 4 Fase di Dispiegamento 5 4.1 JBoss 5.x e 6.x....................................................

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli

La tecnologia ASP.NET e i database

La tecnologia ASP.NET e i database Introduzione alle pagine dinamiche Con il linguaggio HTML si possono creare delle pagine Web statiche. Se invece volessimo creare delle pagine Web dinamiche, pagine il cui codice html viene generato al

Dettagli

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008

Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Basi di dati e Web (Moduli: Laboratorio e Siti Web centrati sui Dati) Prova scritta del 14 luglio 2008 Avvertenze: e severamente vietato consultare libri e appunti; chiunque verrà trovato in possesso di

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare

Dettagli

Protocolli e architetture per WIS

Protocolli e architetture per WIS Protocolli e architetture per WIS Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di informazioni e servizi Le architetture moderne dei WIS

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi Applicazioni web Parte 6 Java Alberto Ferrari 1 Sommario Introduzione alle API ed esempi Tomcat Server per applicazioni web Alberto Ferrari 2 Alberto Ferrari 1 Java: da applet a servlet In origine Java

Dettagli

Applicazione ASP di esempio

Applicazione ASP di esempio Applicazione ASP di esempio Database in rete Prof. Claudio Maccherani Un server web è un programma che gira su un computer sempre collegato ad Internet e che mette a disposizione file, pagine e servizi.

Dettagli

GERARCHIE RICORSIVE - SQL SERVER 2008

GERARCHIE RICORSIVE - SQL SERVER 2008 GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Architettura di una applicazione Web Browser Web HTTP Server Web PHP Dati View Control

Dettagli

Le tecnologie software Internet

Le tecnologie software Internet Università di Bergamo Facoltà di Ingegneria Applicazioni Internet B B2_1 V1.7 Le tecnologie software Internet Standard aperti / Sun Java Il contenuto del documento è liberamente utilizzabile dagli studenti,

Dettagli

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web Corso di PHP 6.1 PHP e il web 1 1 Prerequisiti Conoscenza HTML Tecnica della programmazione Principi di programmazione web 2 1 Introduzione In questa Unità illustriamo alcuni strumenti di programmazione

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System II parte Progetto gestione booking prenotazioni on-line 1. Progettazione e creazione struttura database che chiameremo booking. 2. Progettazione e creazione di un form

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

Esercizi di JavaScript

Esercizi di JavaScript Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio

Dettagli

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf Esercitazione 1 SQL: DDL e DML di base Sistemi Informativi T Versione elettronica: L01.2.DDLDMLbase.pdf Prime cose da fare Fare login sul PC usando lo username di Facoltà Procedura descritta qui: http://ccib.ing.unibo.it/content/account

Dettagli

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE CHIARA FERRARI 5I MERCURIO INDICE: 1. TRACCIA DEL PROBLEMA 2. SVILUPPO DEL PROGETTO (ENTITA, ATTRIBUTI) 3. SCHEMA E-R DELLA BASE DEI

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Basi di Dati Esercitazione JDBC. Giugno 2007

Basi di Dati Esercitazione JDBC. Giugno 2007 Basi di Dati Esercitazione JDBC Giugno 2007 Esercizi Considerando il seguente schema: Fornitori (CodiceFornitore, Nome, Indirizzo, Citta) Prodotti (CodiceProdotto, Tipo, Marca, Modello) Catalogo (CodiceFornitore,

Dettagli

Programmazione Java Avanzata Spring - JDBC

Programmazione Java Avanzata Spring - JDBC Programmazione Java Avanzata Spring - JDBC Ing. Gianluca Caminiti Riferimenti Spring http://www.springsource.org/ (scaricate il reference) Beginning Spring 2 - From Novice to Professional. APress. 2008

Dettagli

ASP: DOMANDE E RISPOSTE (Q&A)

ASP: DOMANDE E RISPOSTE (Q&A) Autore: Classe: Nicola Ceccon QUINTA INFORMATICA (5IA) Anno scolastico: 2003/2004 Scuola: Itis Euganeo ASP: DOMANDE E RISPOSTE (Q&A) Dispensa La dispensa presenta i contenuti fondamentali di ASP nella

Dettagli

Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3

Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 Verso l architettura MVC-2 2 Il secondo passo verso l architettura MVC-2 è quello di separare il controllo dell

Dettagli

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE 1. JAVA 1.1 Introduzione a Java Introduzione Cosa è Java 1.2 Sintassi e programmazione strutturata variabili e metodi tipi di dati, array operatori

Dettagli

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l. Progetto SITI Manuale Utente SITI-Reports ABACO S.r.l. ABACO S.r.l. C.so Umberto, 43 46100 Mantova (Italy) Tel +39 376 222181 Fax +39 376 222182 www.abacogroup.eu e-mail : info@abacogroup.eu 02/03/2010

Dettagli

SQL Server. SQL server e un RDBMS di tipo client/server che utilizza Transact-SQL per gestire la comunicazione fra un client e SQL Server

SQL Server. SQL server e un RDBMS di tipo client/server che utilizza Transact-SQL per gestire la comunicazione fra un client e SQL Server SQL Server 7.0 1 SQL Server SQL server e un RDBMS di tipo client/server che utilizza Transact-SQL per gestire la comunicazione fra un client e SQL Server 2 Strumenti per la gestione Enterprise Manager

Dettagli

Università degli studi Roma Tre Dipartimento di informatica ed automazione. Tesi di laurea

Università degli studi Roma Tre Dipartimento di informatica ed automazione. Tesi di laurea Università degli studi Roma Tre Dipartimento di informatica ed automazione Tesi di laurea Reingegnerizzazione ed estensione di uno strumento per la generazione di siti Web Relatore Prof. P.Atzeni Università

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

Dettagli

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>...

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>... HTML HyperText Markup Language Struttura di un documento HTML Gli elementi essenziali di un documento HTML sono i seguenti TAG: ... ... ... Struttura di un documento

Dettagli

Metodologie Informatiche Applicate al Turismo

Metodologie Informatiche Applicate al Turismo Metodologie Informatiche Applicate al Turismo 9. HTML Parte II Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Scienze

Dettagli

Approfondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP.

Approfondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP. U.A. 5 - Database in rete con le pagine ASP e ASP.NET 269 Il controllo di SQL Injection nelle pagine ASP e ASP.NET Approfondimenti Con il termine SQL Injection si intende l aggiunta di istruzioni SQL nell

Dettagli

Esercitazione 4 JDBC

Esercitazione 4 JDBC JDBC Obiettivi dell esercitazione Familiarizzare con l'organizzazione dell'ambiente di lavoro per la realizzazione di applicazioni Java Utilizzare i costrutti di base della libreria JDBC per 1. la gestione

Dettagli

Scheda 15 Accedere ai DataBase con JDBC

Scheda 15 Accedere ai DataBase con JDBC Scheda 15 Accedere ai DataBase con JDBC G IOVANNI PULITI Panoramica: che cosa è JDBC La API JDBC, introdotta per la prima volta con il JDK 1.0, è una API che permette di accedere a database relazionali

Dettagli

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN

PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN PHP E MYSQL CREAZIONE DI UN NUOVO DATABASE DAL PHPMYADMIN Il metodo migliore per creare nuovi DB è quello di usare l interfaccia del PHPMYADMIN (che viene installata automaticamente con il pacchetto easy

Dettagli

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java] Desideriamo realizzare una applicazione web che ci consenta di calcolare il fattoriale di un numero. L'esercizio in sé non particolarmente difficile, tuttavia esso ci consentirà di affrontare il problema

Dettagli

Introduzione JDBC interfaccia java.sql driver caricare i driver

Introduzione JDBC interfaccia java.sql driver caricare i driver J D B C DISPENSE Introduzione JDBC (Java Database Connectivity) è un interfaccia completamente Java utilizzata per eseguire istruzioni SQL sui database. L'API JDBC si trova nel pacchetto java.sql; contiene

Dettagli

Laboratorio di sistemi Prima Web Application JSP [Java]

Laboratorio di sistemi Prima Web Application JSP [Java] Vogliamo scrivere la nostra prima web application che legga da tastiera il nostro nome e fornisca un messaggio di saluto. Per costruire la nostra applicazione creiamo con NetBeans un nuovo progetto. File

Dettagli

04/05/2011. Lezione 6: Form

04/05/2011. Lezione 6: Form Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

Lezione 6: Form 27/04/2012

Lezione 6: Form 27/04/2012 Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

Esercitazione sulle libpq - libreria C per PostgreSQL

Esercitazione sulle libpq - libreria C per PostgreSQL Esercitazione sulle libpq - libreria C per PostgreSQL Roberto Tronci roberto.tronci@diee.unica.it Basi di Dati A.A. 2007/2008 Tronci ( roberto.tronci@diee.unica.it ) Esercitazione libpq Basi di Dati 2007/2008

Dettagli

Strumenti Software per Esercitazioni (ambiente Windows) Basi di Dati L LS Ing. Gestionale

Strumenti Software per Esercitazioni (ambiente Windows) Basi di Dati L LS Ing. Gestionale Strumenti Software per Esercitazioni (ambiente Windows) Basi di Dati L LS Ing. Gestionale Installazione EasyPHP Scaricare e lanciare easyphp1-8_setup.exe (es. dalla pagina della didattica su http://www-db.deis.unibo.it/~fgrandi)

Dettagli

Esercitazione PAM. (Php Apache MySQL)

Esercitazione PAM. (Php Apache MySQL) Prerequisiti: Esercitazione PAM (Php Apache MySQL) Installazione del server Apache: avvenuta; Installazione del server Php: avvenuta; Sincronizzazione dei due server: avvenuta. Abstract: L esercitazione

Dettagli

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni

Dettagli

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28 Indice 25 184 Introduzione XI Capitolo 1 Impostazione dell ambiente di sviluppo 2 1.1 Introduzione ai siti Web dinamici 2 1.2 Impostazione dell ambiente di sviluppo 4 1.3 Scaricamento di Apache 6 1.4 Installazione

Dettagli

Gestione Orario Lezioni: Schema del Database

Gestione Orario Lezioni: Schema del Database Gestione Orario Lezioni: Schema del Database corsi corso studenti studente anno anno docente orario id corso giorno ora1 docenti docente dipartimento email ora2 aula aule aula capienza 1 Gestione Orario

Dettagli

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server

Dettagli

Lezione III: Oggetti ASP e interazione tramite form HTML

Lezione III: Oggetti ASP e interazione tramite form HTML Lezione III: Oggetti ASP e interazione tramite form HTML La terza lezione, come le precedenti, ha avuto una durata di due ore, di cui una in aula e l altra in laboratorio, si è tenuta alla presenza della

Dettagli

Non si deve fare ALCUN riferimento alla parte specifica di JDBC.

Non si deve fare ALCUN riferimento alla parte specifica di JDBC. Un applicazione per la quale sia fondamentale l indipendenza dal Database può essere scritta in Java usando le specifiche. (Package java.sql) Non devono essere usate chiamate specifiche del database: Si

Dettagli

Dott.ssa Adriana Pietramala

Dott.ssa Adriana Pietramala Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala a.pietramala@mat.unical.it Riferimenti Sito del corso: Manuale PHP http://www.php.net/download-docs.php Editor di

Dettagli

PMF Integration Tools

PMF Integration Tools PMF Integration Tools Strumenti di integrazione di PMF con l infrastruttura del cliente Architettura e modalità di interazione Cliente - documentazione - Redatto da Francesco Buratto Redatto il 01/10/2012

Dettagli

Esempio di esecuzione di una pagina JSP: Il client chiede la pagina: http:// sdfonline.unimc.it/info/modulo.jsp;

Esempio di esecuzione di una pagina JSP: Il client chiede la pagina: http:// sdfonline.unimc.it/info/modulo.jsp; JAVA SERVER PAGES Una pagina JSP (Java Server Pages), richiesta da un utente (client), viene eseguita dal server web nella propria memoria; generalmente il prodotto dell elaborazione è una pagina html

Dettagli

JavaServer Pages: Introduzione

JavaServer Pages: Introduzione JavaServer Pages: Introduzione Gianluca Moro gianluca.moro@unibo.it Dipartimento di Elettronica, Informatica e Sistemistica Università di Bologna Sistemi reali in JSP!! ofoto.com: stampa e gestisce foto

Dettagli

DBMS ed Applicazioni Motivazioni

DBMS ed Applicazioni Motivazioni DBMS ed Applicazioni Motivazioni Sin ora abbiamo visto SQL come linguaggio per interrogare DBMS da interfaccia interattiva Nella pratica, un efficace sfruttamento delle potenzialità dei DBMS deriva dalla

Dettagli

Integrazione InfiniteCRM - MailUp

Integrazione InfiniteCRM - MailUp Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando

Dettagli

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende. Programma 30 set 205 Installazione Macchina Virtuale Introduzione alla BI nelle Aziende Introduzione SQL Macchina Virtuale È un emulazione di un computer su un altro computer Stesso punto di partenza per

Dettagli

Implementazione di MVC. Gabriele Pellegrinetti

Implementazione di MVC. Gabriele Pellegrinetti Implementazione di MVC Gabriele Pellegrinetti 2 Come implementare il pattern Model View Controller con le tecnologie JSP, ASP e XML Implementazione del pattern MVC in Java (JSP Model 2) SUN è stato il

Dettagli

- La formattazione con foglio di stile esterno: Come realizzare e collegare un file con codice di stile ad una pagina web.

- La formattazione con foglio di stile esterno: Come realizzare e collegare un file con codice di stile ad una pagina web. I fogli di stile. Argomenti trattati: - La formattazione con foglio di stile interno: Come dichiarare lo stile di una pagina web all'interno del suo codice. - Ereditarietà e selettori contestuali: Come

Dettagli

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) 1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2014/2015 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2014-15.htm Dott.ssa Francesca A. Lisi dott.ssa Francesca A.

Dettagli

L aspetto dei file HTML

L aspetto dei file HTML L aspetto dei file HTML Le pagine HTML contengono due tipi di oggetti: il testo del documento i TAG HTML Il documento si presenta come una successione di elementi (annidati) del tipo Testo influenzato

Dettagli

HTML 6. I frame. Sintassi di base. I frame e DOCTYPE FRAME. ...head... <FRAMESET lista_attributi> <FRAME SRC= URL lista_attributi>

HTML 6. I frame. Sintassi di base. I frame e DOCTYPE FRAME. ...head... <FRAMESET lista_attributi> <FRAME SRC= URL lista_attributi> FRAME HTML 6 I frame Danno la possibilità di creare finestre multiple all'interno della finestra del browser Si riesce a suddividere la pagina in più sezioni indipendenti, ma che si possono influenzare

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli