Programmazione Java Avanzata

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Programmazione Java Avanzata"

Transcript

1 Programmazione Java Avanzata Struts 2 (Parte 4) Ing. Giuseppe D'Aquì

2 Testi Consigliati Struts 2 In Action (Manning) Practical Apache Struts 2 Web 2.0 Projects (Apress) Validator reference: 2

3 Interceptor Validation Abbiamo visto come effettuare una validazione logica con l'interceptor Workflow Questo ulteriore interceptor permette di validare l'input utente attraverso la configurazione, tramite XML o annotazioni 3

4 Interceptor Validation L'interceptor Validation è il punto d'accesso al Validation Framework presente in Struts2 Il Validation Framework consente di combinare una serie di test sui nostri input I test sono predefiniti e se ne possono creare di nuovi L'interceptor Validation viene eseguito subito prima di Workflow, e si possono utilizzare contemporaneamente 4

5 Interceptor Validation L'interceptor ha bisogno di file di configurazione scritti in XML È anche possibile usare l'equivalente configurazione tramite annotations Vedi: Il file XML ha il seguente nome: NomeAction-validation.xml Es. Register-validation.xml 5

6 Tipi di validator predefiniti Field Validators Effettuano controlli su singoli campi della form HTML Non-field Validators Effettuano controlli su combinazioni di campi 6

7 Validazione XML La radice è il tag <validators> All'interno possono esserci tag <field>, per i field validator Tag <validator>, per i non-field validator 7

8 Validazione XML <field name="username"> <field-validator type="requiredstring"> <message >Username is required.</message> </field-validator> </field> 8

9 Validazione XML Il tag <field> prevede un attributo name che corrisponde al nome del campo All'interno del tag ci possono essere uno o più tag <field-validator> <field-validator> ha un attributo type : il suo valore può essere uno dei validator di struts Es.: requiredstring, stringlenght Dentro <field-validator> troviamo uno o più tag <param> (per configurare il validator) 9

10 Validazione XML Dentro <field-validator> troviamo anche un tag <message> usato per contenere il messaggio che verrà visualizzato all'utente Il testo di <message> può contenere anche espressioni OGNL, scritte nella forma: ${ espressione } Attenzione: in questo caso si usa ${ } e non %{ } come si faceva nel JSP Se vogliamo usare una stringa di un Resource Bundle basta usare l'attributo key, come per i campi di testo 10

11 Validazione XML Per i non-field validator abbiamo il tipo expression Questo validator prende un parametro expression che contiene una qualunque espressione OGNL booleana 11

12 Esempio 12: validazione via XML Vedi 12

13 Validazione XML: Short Circuit Se per un dato campo ci sono più validator attivi, ogni fallimento corrisponde ad un messaggio utente Ci sono casi in cui non ha senso far comparire molti errori e vorremmo visualizzare solo il primo (o i primi n) In questo caso si può usare l'attributo shortcircuit nel <field-validator> che interrompe l'esecuzione dei prossimi validator <field-validator type=... short-circuit= true > 13

14 I18n degli errori di conversione In caso di errori di conversione prima della validazione, Struts2 mostra dei messaggi di errore predefiniti Es. conversione da stringa a Date È possibile modificarli inserendo nei nostri resource bundle alcune stringhe con chiave: invalid.fieldvalue.nomecampo Esempio: invalid.fieldvalue.datadinascita=la data di nascita non ha un formato valido 14

15 Struts UI Tags 15

16 UI tag: attributi comuni Tutti i tag UI (User Interface) hanno un insieme di attributi in comune, che cioè possono essere usati in ogni tag name: è riportato nell'attributo name HTML, ed è usato come riferimento ad un oggetto sul ValueStack Key: serve per riferirsi a stringhe di un Resource Bundle Label: crea una label HTML per il campo; se è specificato l'attributo key non è necessario 16

17 UI tag: attributi comuni (2) required: se posto a true, comparirà un asterisco accanto al nome del campo disabled: booleano, imposta l'attributo disabled in HTML labelposition: può essere pari a left o top, definisce la posizione della label rispetto al campo cssclass: viene tradotto con l'attributo HTML class, usato per impostare la classe CSS del campo 17

18 UI tag: head Il tag <s:head /> si usa senza parametri In sé non fa alcuna azione, ma è usato da Struts per aggiungere in automatico fogli di stile CSS oppure Javascript esterni Infatti alcuni tag prevedono l'uso di librerie javascript e fogli di stile che, senza il tag <s:head /> dovremmo aggiungere manualmente 18

19 UI tag: form <s:form> è probabilmente il tag più importante, perché sta alla base di tutti gli inserimenti di input dell'utente I suoi attributi principali sono: action: può essere il nome di una Action oppure una URL; se è riconosciuto come nome di una Action allora genera la url corrispondente namespace: è riferito all'attributo action, indica il namespace di riferimento della Action 19

20 UI tag: form Altri attributi: method: si comporta come l'equivalente HTML, di default è pari a POST target: come in HTML; permette di aprire una nuova finestra con il risultato della form enctype: usato nel caso uno dei campi serva per fare l'upload di file; in questo caso è impostato a multipart/form-data 20

21 UI tag: textfield Abbiamo già visto <s:textfield> in molti esempi I suoi attributi: maxlenght: la dimensione massima per il contenuto del campo readonly: se posto a true, il campo non è modificabile size: la dimensione visibile del campo 21

22 UI tag: password Il tag <s:password> è essenzialmente una textfield con i caratteri sostituiti da un asterisco Come tale, ha gli stessi attributi di <s:textfield> Ulteriore attributo: showpassword: se impostato a true, il valore del campo verrà preso dal ValueStack. Infatti per default se il campo è password si ha un valore vuoto; la password rimane in ogni caso nascosta dagli asterischi 22

23 UI tag: textarea <s:textarea> ha un uso molto simile a <s:textfield>, solo che si usa per contenuti di testo molto lunghi Attributi: cols: numero di colonne da visualizzare rows: numero di righe readonly: se true, il contenuto non è modificabile wrap: imposta la funzione di a capo automatico ; può essere off, physical (a capo automatico) e virtual (come physical ma elimina tutti gli a capo quando la form viene inviata ) 23

24 UI tag: checkbox <s:checkbox> serve per impostare proprietà booleane Attributi: fieldvalue: può essere true o false ; è il valore che verrà inviato se la spunta è impostata value: booleano, indica se la spunta deve essere già impostata oppure no 24

25 UI tag: select Permette all'utente di selezione un valore da una lista <s:select> funziona con tutte le Collection Attributi: list: è un'espressione OGNL che si riferisce ad un oggetto di tipo Collection che contiene i valori per il campo listkey: la proprietà (variabile membro) dell'oggetto Collection che verrà usata come chiave 25

26 UI tag: select Altri attributi: listvalue: la proprietà (variabile membro) dell'oggetto Collection che sarà effettivamente vista dall'utente multiple: booleano, serve ad impostare se l'utente può scegliere più valori size: il numero di righe mostrate alla volta 26

27 UI tag: radio <s:radio> è molto simile a <s:select> ma presenta la scelta in un altro modo Le scelte possibili sono elencate ed è possibile sceglierne una sola alla volta I pulsanti ricordano il funzionamento delle vecchie radio, dove quando si premeva un pulsante si sbloccavano tutti gli altri Gli attributi sono gli stessi di <s:select> : list listkey listvalue 27

28 UI tag: checkboxlist <s:checkboxlist> è molto simile a <s:select> impostato per scelta multipla Visualizza le varie scelte con accanto una checkbox, e possono essere spuntate in modo indipendente Gli attributi sono gli stessi di <s:select> : list listkey listvalue 28

29 Preselezione I tag UI hanno normalmente il riempimento automatico da parte di Struts Es. se un <s:textfield> si riferisce ad un oggetto sul ValueStack, il suo valore sarà automaticamente impostato I tag di selezione hanno invece bisogno di alcune impostazioni per essere preselezionati 29

30 Preselezione (2) Il cuore della preselezione è l'attributo value value permette di impostare un'espressione OGNL con il valore predefinito del campo Value è comune a tutti i tag, ma per i campi stringa è automaticamente impostato da Struts Quando trattiamo con campi Collection dovremmo riempirlo a mano con i valori della preselezione value deve essere riempito in modo da riferirsi a una delle chiavi della Collection 30

31 UI tag: label <s:label> è diverso dall'attributo label dei campi È un textfield a sola lettura Invece di mostrare una casella per scrivere il testo, mostra solo il testo Utile per mostrare campi immodificabili Attributi come <s:textfield>: name, label, key 31

32 UI tag: hidden <s:hidden> serve ad inserire parametri invisibili in una form Infatti spesso ci sono dei parametri (come l'id) che non ha senso mostrare all'utente ma che vogliamo vengano passati alla Action quando la form viene inviata Attributi: name 32

33 Esempio 13: uso dei tag UI Vedi 33

34 Result Types I Result possono essere di tipi differenti, che si impostano con l'attributo type nel tag <result> di struts.xml: dispatcher: default, serve per impostare una url che corrisponde ad un file JSP da renderizzare redirect: dopo l'esecuzione della Action comunica al browser di cambiare URL (redirezionamento) [l'abbiamo visto nel caso di fallita autenticazione] redirectaction: come redirect, ma redirige verso un'altra Action 34

35 RedirectAction Nel caso il result type sia redirectaction dobbiamo impostare alcuni parametri actionname: il nome della Action da richiamare namespace: il namespace che contiene la action da richiamare L'uso è: <result type= redirectaction > <param name= actionname >MiaAction</param> <param name= namespace >/esempio1</param> </result> 35

36 Creare un convertitore di tipo Struts permette di creare propri convertitori di tipo, in aggiunta a quelli di default Possono essere utili per acquisire in automatico oggetti rappresentati da stringhe complesse Esempio: potremmo voler trasformare un campo di testo indirizzo direttamente in un oggetto Indirizzo L'utente scrive Via Garibaldi, 30 e automaticamente Struts crea un oggetto corrispondente 36

37 Creare un convertitore di tipo (2) Un convertitore di tipo è una qualunque classe che estende StrutsTypeConverter E implementa le funzioni convertfromstring() e converttostring() Struts chiamerà l'una o l'altra funzione a seconda della direzione di conversione 37

38 Creare un convertitore di tipo (3) Per utilizzare il nostro convertitore, è necessario creare un file chiamato NomeAction-conversion.properties Il file serve per definire, per ogni campo, un corrispondente convertitore Basta impostare ad es. indirizzo=it.unirc.pja.conv.convertitoreindirizzo E il campo indirizzo della nostra form utilizzerà il convertitore prescelto invece di quello di default 38

39 List e Map in OGNL Spesso può essere necessario creare in OGNL degli oggetti Collection dinamici Ad esempio quando abbiamo campi di selezione <s:select> (vedi) Per esempio, volendo impostare in un campo la lista contenente i numeri 1, 2 e 3, dovremmo creare un oggetto List sul ValueStack e poi riferirci a quello via OGNL 39

40 List e Map in OGNL (2) Per fortuna c'è un metodo più rapido: {1, 2, 3} Restituisce un oggetto List il cui contenuto è 1, 2 e 3 #{ mrossi : Mario Rossi, dbianchi : Davide Bianchi } Restituisce un oggetto Map con due elementi: Mario Rossi (con chiave mrossi ) e Davide Bianchi (con chiave dbianchi ) 40

41 Creare un proprio Validator Un proprio validator può venire in aiuto se vogliamo separare la logica di validazione in una classe specializzata, ai fini di riuso dello stesso codice di validazione in più Action Se creiamo un nostro validator potremo richiamarlo tramite validazione XML 41

42 Creare un proprio Validator (2) La nostra classe deve estendere FieldValidatorSupport (se è un field validator) oppure ValidatorSupport Il cuore della classe è una funzione validate() che si scrive in modo identico a come la scriveremmo all'interno di una Action In particolare, avremo a disposizione i metodi getfieldname() e getfieldvalue() che ci restituiscono, rispettivamente, il nome del campo e il valore che dovremo testare 42

43 Esempio 14: validator fatto in casa Vedi 43

44 Programmazione Java Avanzata Hibernate e JPA Ing. Giuseppe D'Aquì

45 Testi Consigliati Beginning Hibernate 2 nd edition (Apress) Sul sito è possibile scaricare, tra gli extra, il codice sorgente e il capitolo 3 Hibernate Getting Started 45

46 Persistenza La persistenza è quella caratteristica delle applicazioni orientate agli oggetti che permette agli oggetti (o alle reti di oggetti) di sopravvivere al processo che li ha creati. Gli oggetti che non possiedono tale proprietà si dicono transitori (transient). L obiettivo della persistenza è raggiunto principalmente mediante l uso di DBMS relazionali.

47 JPA Java Persistence API è uno standard per l'implementazione di framework che forniscono servizi di persistenza Se un framework per la persistenza implementa JPA, allora i suoi oggetti estenderanno e implementeranno le classi e le interface di JPA Si standardizza l'utilizzo della persistenza

48 JPA (2) JPA è composto da due parti: Le Application Programming Interfaces vere e proprie, definite nel package javax.persistence Un query language semplificato chiamato JPQL JPA è stato definito prendendo come riferimento Hibernate, un famoso middleware di persistenza e il suo linguaggio di query HQL Hibernate a sua volta, nelle ultime versioni, implementa JPA e quindi il cerchio si chiude

49 ORM L' Object-Relational Mapping (ORM) è un paradigma di programmazione che permette l'integrazione fra applicazioni Object-Oriented e sistemi RDBMS. Un applicazione ORM fornisce, mediante un'interfaccia orientata agli oggetti: I servizi inerenti la persistenza dei dati Un astrazione rispetto alle caratteristiche implementative dello specifico RDBMS utilizzato.

50 ORM: Vantaggi Superamento del disadattamento dell'impedenza tra paradigma relazionale e ad-oggetti (object/relational impedance mismatch). Riduzione della quantità di codice da scrivere. l'orm presenta una semplice interfaccia per realizzare operazioni di tipo CRUD, che sono per loro natura molto ripetitive e favoriscono la possibilità che vengano commessi errori durante la stesura del codice che le implementa

51 ORM: Vantaggi (2) Approccio stratificato, che isola in un solo livello la logica di persistenza dei dati, a vantaggio della modularità complessiva del sistema. Elevata portabilità rispetto alla tecnologia DBMS utilizzata.

52 ORM: Vantaggi (3) Caricamento automatico del grafo degli oggetti secondo i legami di associazione definiti a livello del linguaggio di modellazione del dominio Lazy-loading, cioè caricamento dei dati collegati on-demand. Rilevamento automatico delle modifiche sui dati e aggiornamento implicito

53 ORM: Vantaggi (4) Gestione della concorrenza nell'accesso ai dati durante sessioni. Conflitti durante la modifica di un dato, da parte di più utenti in contemporanea, possono essere automaticamente rilevati dal sistema ORM. Meccanismi di caching dei dati per migliorare le prestazioni di accesso al RDBMS utilizzato.

54 Hibernate Hibernate è un middleware che permette di automatizzare la persistenza degli oggetti negli RDBMS I mapping fra Java e Tabelle del DB sono fissati dall utente attraverso file XML o annotazioni sul codice Hibernate è detto lightweight perché lavora con oggetti Plain Old Java Object (POJO) Un POJO è un oggetto semplice, che non deve rispondere alle specifiche di alcn altro framework

55 Hibernate Hibernate permette di scrivere codice che si riferisce agli oggetti Java, automatizzando le operazioni CRUD, tramite la generazione automatica del codice SQL che lega gli oggetti alle tabelle del DB. Esiste un linguaggio di querying (HQL) che fa riferimento ai POJO E possibile creare il codice Java automaticamente a partire dai mapping E possibile partire dal DB per creare le classi (reverse engineering)

56 Hibernate: Struttura

57 Hibernate: concetti base Due sono i concetti da capire per comprendere bene il funzionamento di Hibernate Entity Un oggetto che corrisponde ad una entità del modello Entità/Relazione Session Una session in Hibernate è una Unit of Work (pattern), ovvero un raggruppamento di operazioni da svolgere assieme

58 Hibernate Tools Sul sito di Hibernate è possibile scaricare un plugin per Eclipse che semplifica molte delle operazioni di configurazione Per esempio consente di creare in maniera visuale i file di configurazione, definire le classi che possiedono mapping eccetera

59 Passi per l'integrazione 1) Identificare i POJO che hanno una rappresentazione su database 2) Identificare le proprietà di questi POJO che devono essere rese persistenti 3) Aggiungere le Java Annotations a ciascun POJO, per mappare le proprietà sulle colonne corrette 4) Creare lo schema del database

60 Passi per l'integrazione (2) 5) Aggiungere le librerie di Hibernate all'applicazione 6) Creare la configurazione di Hibernate in XML 7) Creare un oggetto Configuration con riferimento al file XML 8) Creare una SessionFactory inizializzata con l'oggetto Configuration 9) Ottenere l'oggetto Session, che ci permetterà di accedere ai dati

61 Includere Hibernate nel progetto Dal pacchetto scaricato dal sito, bisogna aggiungere al progetto: Il file hibernate3.jar I file jar contenuti in lib/required I file jar contenuti in lib/jpa Nota bene: Hibernate può essere utilizzato in qualsiasi tipo di progetto, non è necessario che sia web-based o J2EE

62 Naming Strategy Se il nostro POJO deve essere reso persistente (è cioè una Entity) dovremo definire un mapping per stabilire: Su quale tabella va salvato A quali campi della tabella corrispondono le variabili membro dell'oggetto Il mapping dovrà essere definito per ogni classe e per ogni proprietà della classe

63 Naming Strategy (2) Hibernate infatti definisce due convenzioni per i nomi: Default: i nomi delle classi corrispondono a nomi di tabella, e i nomi delle proprietà corrispondono a nomi dei campi Es: un oggetto di tipo User verrà salvato sulla tabella User, e la sua variabile firstname su un campo firstname

64 Naming Strategy (3) Seconda convenzione: Improved: i nomi delle classi e delle proprietà vengono riportati in minuscolo, e se si usa lo standard CamelCase le due parole vengono separate con underscore Es: un oggetto di tipo User verrà salvato sulla tabella user, e la sua variabile firstname su un campo first_name

65 Esempio15: Hibernate base Vedi

66 Mapping con Annotations Definiremo i nostri mapping object/relational tramite Java Annotation immerse nel codice dei nostri oggetti In questo caso le annotation sono comode, perché abbiamo oggetti che rappresentano elementi del dominio applicativo che sono POJO e quindi non contengono logica estranea all'oggetto stesso

67 Mapping con Annotations Posto prima di una classe, specifica che la stessa è una Entità (come da modello Posto prima di una classe, permette di specificare il nome della tabella che salverà gli oggetti di quella classe, evitando di utilizzare una Naming Strategy

68 Mapping con Annotations Posto prima di una variabile o di un getter, specifica che quella proprietà è la chiave primaria della Posto subito specifica che quel campo è una chiave con valore incrementale che deve essere definita da Hibernate

69 Mapping con Annotations Posto prima di una variabile o un getter, specifica che quel valore non deve essere considerato persistente e pertanto non va salvato nel database

70 Mapping con Annotations Posto prima di una variabile o un getter, specifica le caratteristiche che avrà la colonna corrispondente nella tabella del database Attributi: Name: il nome della colonna lenght: la lunghezza Nullable: se può essere NULL o meno Unique

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Introduzione a Servlet e Struts 2 Ing. Giuseppe D'Aquì 1 Testi Consigliati Java Enterprise in a nutshell, 3 rd edition (O'Reilly) Struts 2 in Action Brown, Davis, Stanlick

Dettagli

Mappare il DB senza XML. Introduzione alle annotation di Hibernate3

Mappare il DB senza XML. Introduzione alle annotation di Hibernate3 Introduzione alle annotation di Hibernate3 a cura di Lucio Benfante Hibernate Hibernate è un framework che realizza un object/relational mapping (ORM) fra oggetti Java e strutture di un database relazionale

Dettagli

Il linguaggio HTML - Parte 3

Il linguaggio HTML - Parte 3 Corso IFTS Informatica, Modulo 3 Progettazione pagine web statiche (50 ore) Il linguaggio HTML - Parte 3 Dott. Chiara Braghin braghin@dti.unimi.it Addenda Vedi tabella caratteri speciali Vedi file caratteri_speciali.html

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

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli UNIVERSITA DI FIRENZE Facoltà di Ingegneria Persistenza Applicazioni Enterprise Uso dei modelli 1 IL problema della persistenza APPLICAZIONE (programmi) (oggetti) DATI PERSISTENTI (file, record) (basi

Dettagli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli

UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli UNIVERSITA DI FIRENZE Facoltà di Ingegneria Persistenza Applicazioni Enterprise Uso dei modelli 1 IL problema della persistenza APPLICAZIONE (programmi) (oggetti) DATI PERSISTENTI (file, record) (basi

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

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [http://java.sun.com/blueprints/corej2eepatterns/patterns/dataaccessobject.html]

Dettagli

Università degli Studi di Bologna Facoltà di Ingegneria. Tecnologie Web L-A A.A. 2014 2015. Esercitazione 08 DAO e Hibernate

Università degli Studi di Bologna Facoltà di Ingegneria. Tecnologie Web L-A A.A. 2014 2015. Esercitazione 08 DAO e Hibernate Università degli Studi di Bologna Facoltà di Ingegneria Tecnologie Web L-A A.A. 2014 2015 Esercitazione 08 DAO e Hibernate Agenda Pattern DAO e framework Hibernate progetto d'esempio relativo alla gestione

Dettagli

Introduzione al mondo della persistenza. Dott. Doria Mauro doriamauro@gmail.com

Introduzione al mondo della persistenza. Dott. Doria Mauro doriamauro@gmail.com Hibernate Introduzione al mondo della persistenza Dott. Doria Mauro doriamauro@gmail.com La questione della persistenza Il modo dei database è complesso e le tecniche e le tecnologie sono molte. Per anni

Dettagli

Corso analista programmatore Java. Corso analista programmatore Java Programma

Corso analista programmatore Java. Corso analista programmatore Java Programma Corso analista programmatore Java Programma 1.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire le conoscenze tecniche e metodologiche per svolgere la professione di Programmatore

Dettagli

Corso Android Corso Online Sviluppo su Cellulari con Android

Corso Android Corso Online Sviluppo su Cellulari con Android Corso Android Corso Online Sviluppo su Cellulari con Android Accademia Futuro info@accademiafuturo.it Programma Generale del Corso di Sviluppo su Cellulari con Android Programma Base Modulo Uno - Programmazione

Dettagli

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare

Dettagli

Framework di Middleware. per Architetture Enterprise

Framework di Middleware. per Architetture Enterprise Framework di Middleware per Architetture Enterprise Corso di Ingegneria del Software A.A.2011-2012 Un po di storia 1998: Sun Microsystem comprende l importanza del World Wide Web come possibile interfaccia

Dettagli

Form Editor. Dove NomeProfilo è personalizzabile.

Form Editor. Dove NomeProfilo è personalizzabile. Form Editor Il tema permette di generare automaticamente dei moduli per la raccolta di dati in tre semplici step: 1. Si crea una tabella nel database per la raccolta dei dati. Per la creazione si parte

Dettagli

Corso Analista Programmatore Java Corso Online Analista Programmatore Java

Corso Analista Programmatore Java Corso Online Analista Programmatore Java Corso Analista Programmatore Java Corso Online Analista Programmatore Java Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Java Tematiche Trattate Modulo Uno

Dettagli

Corso Online. We Train Italy info@wetrainitaly.it

Corso Online. We Train Italy info@wetrainitaly.it Corso Online Programmatore Java New Edition We Train Italy info@wetrainitaly.it Programma Generale del Corso Programmatore Java New Edition 1. Introduzione al corso Java da 0 al web Presentazione del corso

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

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

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. 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

Progettazione: Tecnologie e ambienti di sviluppo

Progettazione: Tecnologie e ambienti di sviluppo Contratto per l acquisizione di servizi di Assistenza specialistica per la gestione e l evoluzione del patrimonio software della Regione Basilicata. Repertorio n. 11016 del 25/09/2009 Progettazione: Tecnologie

Dettagli

Tutorial web Application

Tutorial web Application Tutorial web Application Installazione della JDK: Java viene distribuito con la jdk e il jre acronimi di Java Development Kit e Java Runtime Environment rispettivamente. La jdk è l'ambiente di sviluppo

Dettagli

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente!

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente! Lezione nr. 5 >> Come creare un modulo Web I moduli web sono delle strutture fondamentali per ogni sito web e la loro conoscenza ti permetterà di risolvere almeno il 60% delle problematiche di gestione

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

Object-Relational Mapping

Object-Relational Mapping Object-Relational Mapping Versione Preliminare Antonella Poggi Dipartimento di informatica e Sistemistica Sapienza Università di Roma Progetto di Applicazioni Software Anno accademico 2008-2009 Questi

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

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Struts2 Avanzato Ing. Giuseppe D'Aquì Struts2 Action Method Struts2 permette di definire metodi diversi da execute() per l'esecuzione del codice delle Action Può capitare,

Dettagli

Sicurezza Protezioni in una pagina Web

Sicurezza Protezioni in una pagina Web Pagina 1 di 7 Sicurezza Protezioni in una pagina Web HTML è un linguaggio che consente di presentare informazioni in pagine di formato predefinito e accattivante. Quando non si hanno a disposizione informazioni

Dettagli

Applicazione: GAS - Gestione AcceSsi

Applicazione: GAS - Gestione AcceSsi Riusabilità del software - Catalogo delle applicazioni Gestione ICT Applicazione: GAS - Gestione AcceSsi Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei sistemi informativi Nome

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

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

Strumenti a disposizione

Strumenti a disposizione FORM Strumenti a disposizione L'HTML visto fino ad ora permette di descrivere solo documenti statici e passivi Colori, immagini, testi, etc... L'utente può solo interagire con i link Non sempre questo

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

SWIM v2 Design Document

SWIM v2 Design Document PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback

Dettagli

Aspetti applicativi e tecnologia

Aspetti applicativi e tecnologia Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati,

Dettagli

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati

A. Bardine - Introduzione a PostgreSQL. PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati Basi di dati PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da 15 anni il suo codice sorgente è quindi disponibile

Dettagli

Introduzione al linguaggio Java: Servlet e JSP

Introduzione al linguaggio Java: Servlet e JSP Introduzione al linguaggio Java: Servlet e JSP Corso di Gestione della Conoscenza d Impresa A. A. 2006/2007 Dipartimento di Informatica Università degli Studi di Bari 1 Servlet e JSP: il contesto Un applicazione

Dettagli

Session tracking Session tracking HTTP: è stateless, cioè non permette di associare una sequenza di richieste ad un dato utente. Ciò vuol dire che, in generale, se un browser richiede una specifica pagina

Dettagli

RenderCAD S.r.l. Formazione

RenderCAD S.r.l. Formazione Corso Descrizione La durata di questo corso è complessivamente di ore 150 di cui 85 ore di teoria, 35 ore di pratica e 30 ore di stage in azienda. Nel nostro territorio esiste una richiesta di tale figura,

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

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

Corso su LINQ Lezione 16. Introduzione

Corso su LINQ Lezione 16. Introduzione LINQ to SQL Introduzione Con questa lezione introduciamo il flavor LINQ to SQL. Dopo aver visto quindi tutte le funzionalità e gli operatori di LINQ to Object, affronteremo ora la tematica riguardante

Dettagli

Software per la gestione di musei di arte contemporanea1

Software per la gestione di musei di arte contemporanea1 Software per la gestione di musei di arte contemporanea1 Identificativo del progetto: CA Nome documento: System Design(SD) Identificativo del documento: 6 CA_SD_E1_R1 Data del documento: 21/05/2012 Prima

Dettagli

Il Web, HTML e Java Corso di Laurea in Ingegneria Informatica Progetto S.C.E.L.T.E.

Il Web, HTML e Java Corso di Laurea in Ingegneria Informatica Progetto S.C.E.L.T.E. Il Web, HTML e Java Corso di Laurea in Ingegneria Informatica Progetto S.C.E.L.T.E. Università di Bologna Facoltà di Ingegneria Bologna, 08/02/2010 Outline Da applicazioni concentrate a distribuite Modello

Dettagli

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014.

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014. Istituto Tecnico Industriale Statale Dionigi Scano Cagliari Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014 relate Un esperimento di social networking open source 1 Introduzione

Dettagli

Corso Programmazione Java Android. Programma

Corso Programmazione Java Android. Programma Corso Programmazione Java Android Programma 1.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire le conoscenze tecniche e metodologiche per svolgere la professione di Programmatore

Dettagli

I FORM. L'attributo action contiene l'url del file php a cui devono essere inviati i file per essere elaborati.

I FORM. L'attributo action contiene l'url del file php a cui devono essere inviati i file per essere elaborati. I FORM Che cosa sono e che caratteristiche hanno Un form contiene molti oggetti che permettono di inserire dati usando la tastiera. Tali dati verranno poi inviati alla pagina php che avrà il compito di

Dettagli

Basi di dati. Introduzione a PostgreSQL. K.Donno - Introduzione a PostgreSQL

Basi di dati. Introduzione a PostgreSQL. K.Donno - Introduzione a PostgreSQL Basi di dati Introduzione a PostgreSQL Introduzione a PostgreSQL PostgreSQL è un software relazionale e ad oggetti per la gestione di basi di dati PostgreSQL è Open-Source ed il suo sviluppo procede da

Dettagli

JUG Ancona Italy Spring Framework

JUG Ancona Italy Spring Framework JUG Ancona Italy Spring Framework Andrea Del Bene Jug Marche Spring: perché e nato e perché lo voglio imparare? Quando si decide di investire in un nuova tecnologia è indispensabile capire il valore aggiunto

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

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti Sviluppo di applicazioni web con il pattern Model-View-Controller Gabriele Pellegrinetti 2 MVC: come funziona e quali sono vantaggi che derivano dal suo utilizzo? La grande diffusione della tecnologia

Dettagli

Simonotti Graziano DATABASE

Simonotti Graziano DATABASE DATABASE 1 - Che cos'è un database? Il database è un archivio di dati, che può essere gestito con sistemi informatici oppure in modo manuale. 2 - Come si chiamano i programmi che gestiscono gli archivi?

Dettagli

Programmazione Java Avanzata Concetti su Java

Programmazione Java Avanzata Concetti su Java Programmazione Java Avanzata Concetti su Java Ing. Giuseppe D'Aquì Testi di Riferimento Java ( R. Liguori, P. Liguori), O'Reilly Hops Tecniche Nuove (2008) Java Virtual Machine Il codice scritto in Java

Dettagli

1 Creazione pagine web utente

1 Creazione pagine web utente 1 Creazione pagine web utente Con il nuovo sistema operativo SFW184 è stata implementata la possibilità di creare pagine web direttamente dall'utente, queste pagine potranno essere trasferite nelle directory

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

qui possiamo scegliere se creare un nuovo Database oppure aprire un Database già esistente. Fatto ciò avremo questa seconda schermata:

qui possiamo scegliere se creare un nuovo Database oppure aprire un Database già esistente. Fatto ciò avremo questa seconda schermata: Creare un Database completo per la gestione del magazzino. Vedremo di seguito una guida pratica su come creare un Database per la gestione del magazzino e la rispettiva spiegazione analitica: Innanzitutto

Dettagli

Architettura e tecnologie per lo sviluppo del Setup-Dashboard. Setup Srl Information Technologies

Architettura e tecnologie per lo sviluppo del Setup-Dashboard. Setup Srl Information Technologies Architettura e tecnologie per lo sviluppo del Setup-Dashboard Setup Srl Information Technologies 1 Introduzione INTRODUZIONE In seguito a diverse richieste, Setup ha deciso di sviluppare un modulo denominato

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

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale Unione Europea Regione Sicilia Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale ISTITUTO TECNICO INDUSTRIALE STATALE G. MARCONI EDILIZIA ELETTRONICA e

Dettagli

Laboratorio di reti II: Java Server Pages

Laboratorio di reti II: Java Server Pages Laboratorio di reti II: Java Server Pages Stefano Brocchi brocchi@dsi.unifi.it 6 aprile, 2009 Stefano Brocchi Laboratorio di reti II: Java Server Pages 6 aprile, 2009 1 / 34 JSP - Java Server Pages Le

Dettagli

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email.

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email. La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net di Emanuele Mattei (emanuele.mattei[at]email.it) Introduzione In questa serie di articoli, vedremo come utilizzare

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

REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007

REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007 SISTEMA A SUPPORTO DEI PROCESSI DI PROGRAMMAZIONE E CONTROLLO DI GESTIONE NELLE ORGANIZZAZIONI PUBBLICHE REALIZZAZIONE DI REPORT MEDIANTE MICROSOFT EXCEL 2007 Copyright 2010 CSIO Società di Informatica

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

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Librerie fondamentali Ing. Giuseppe D'Aquì Testi Consigliati Eclipse in Action (David Gallardo, Ed Burnette and Robert McGovern), Manning (2003) JUnit Cookbook [http://junit.sourceforge.net/doc/cookbook/cookbook.htm]

Dettagli

MICROSOFT ACCESS. Sommario del Corso

MICROSOFT ACCESS. Sommario del Corso MICROSOFT ACCESS Revisione dispense n 5 Sommario del Corso MICROSOFT ACCESS... 1 INTRODUZIONE... 2 Il Database di Microsoft Access... 2 GLI OGGETTI... 3 Gli oggetti del database... 3 Visualizzazioni degli

Dettagli

Applicazione: SIPER Servizi In linea per il PERsonale

Applicazione: SIPER Servizi In linea per il PERsonale Riusabilità del software - Catalogo delle applicazioni Gestione Personale Applicazione: SIPER Servizi In linea per il PERsonale Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

Corso Android Corso Online Programmatore Android

Corso Android Corso Online Programmatore Android Corso Android Corso Online Programmatore Android Accademia Domani Via Pietro Blaserna, 101-00146 ROMA (RM) info@accademiadomani.it Programma Generale del Corso Modulo Uno - Programmazione J2ee 1) Programmazione

Dettagli

Forms. Commercio elettronico Registrazione di nuovi membri (organizzazioni non-profit) Ricerca di mercato (collezione di dati relativi a utenti)

Forms. Commercio elettronico Registrazione di nuovi membri (organizzazioni non-profit) Ricerca di mercato (collezione di dati relativi a utenti) Forms Rendono XHTML interattivo in modo semplice: Commercio elettronico Registrazione di nuovi membri (organizzazioni non-profit) Ricerca di mercato (collezione di dati relativi a utenti) Svariati controlli

Dettagli

Progettazione Web Applicazioni client-server

Progettazione Web Applicazioni client-server Progettazione Web Applicazioni client-server Sviluppo di un'applicazione Web integrando: HTML MySQL PHP Apache Applicativi utilizzabili: gestione database: JDER, MySQL Workbench, HeidiSQL (Win), DBeaver

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Navigazione automatica e rilevazione di errori in applicazioni web

Navigazione automatica e rilevazione di errori in applicazioni web Politecnico di Milano Navigazione automatica e rilevazione di errori in applicazioni web Relatore: Prof. Stefano Zanero Fabio Quarti F e d e r i c o V i l l a A.A. 2006/2007 Sommario Obiettivo: Illustrare

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

L ambiente di sviluppo Android Studio

L ambiente di sviluppo Android Studio L ambiente di sviluppo Android Studio Android Studio è un ambiente di sviluppo integrato (IDE, Integrated Development Environment) per la programmazione di app con Android. È un alternativa all utilizzo

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

COM_HELLOWORLD_PART4

COM_HELLOWORLD_PART4 COM_HELLOWORLD_PART1 Nel manifest la presenza del tag permette di gestire le versioni incrementali di aggiornamento anche grazie all uso del tag . Le installazioni successive del componente

Dettagli

CORSO DI PROGRAMMAZIONE JAVA

CORSO DI PROGRAMMAZIONE JAVA CORSO DI PROGRAMMAZIONE JAVA Corso di Programmazione Java Standard Edition ( MODULO A) OBIETTIVI ll corso ha come obiettivo quello di introdurre la programmazione a oggetti (OOP) e di fornire solide basi

Dettagli

Breve guida all utilizzo del file Excel: input-forms.xls

Breve guida all utilizzo del file Excel: input-forms.xls SUR+ OA: Configurazione del processo di submission e validazione dei metadati Breve guida all utilizzo del file Excel: input-forms.xls Versione: 1.4 (27 luglio 2011) Autore: Andrea Bollini, Nilde De Paoli

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Hibernate (Parte 2) Ing. Giuseppe D'Aquì Testi Consigliati Beginning Hibernate 2 nd edition (Apress) Sul sito è possibile scaricare, tra gli extra, il codice sorgente e il

Dettagli

DURANTE LA NAVIGAZIONE NEI SITI WEB I VISITATORI NON SOLO POSSONO CONSULTARE INFORMAZIONI STATICHE

DURANTE LA NAVIGAZIONE NEI SITI WEB I VISITATORI NON SOLO POSSONO CONSULTARE INFORMAZIONI STATICHE MODULI O FORM DURANTE LA NAVIGAZIONE NEI SITI WEB I VISITATORI NON SOLO POSSONO CONSULTARE INFORMAZIONI STATICHE ADATTE ALLA LETTURA MA POSSONO SVOLGERE UN RUOLO ATTIVO NEI CONFRONTI DI UNA PAGINA WEB

Dettagli

Configurazione Stampe

Configurazione Stampe Configurazione Stampe Validità: Febbraio 2013 Questa pubblicazione è puramente informativa. SISECO non offre alcuna garanzia, esplicita od implicita, sul contenuto. I marchi e le denominazioni sono di

Dettagli

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013 e di e di Candidato: Luca Russo Docente: Corso di laurea in Informatica Applicata Facoltá di Scienze e Tecnologie Programmazione su Reti 27 Marzo 2013 Traccia d esame Sviluppare multitier con disaccoppiamento

Dettagli

Un esempio di applicazione client / server:

Un esempio di applicazione client / server: LEZIONE DEL 04/11/2008 RIEPILOGO Il nostro obiettivo è imparare a progettare DataBase e applicazioni di DataBase e per fare questo, adottiamo il cosiddetto approccio a 3 livelli: MODELLO CONCETTUALE DIAGRAMMA

Dettagli

Creazione ed uso di un data base in ACCESS Lezioni ed esercizi

Creazione ed uso di un data base in ACCESS Lezioni ed esercizi Creazione ed uso di un data base in ACCESS Lezioni ed esercizi 1 ACCESS Gli archivi Gli archivi sono un insieme organizzato di informazioni. Aziende Clienti e fornitori Personale Magazzino Enti pubblici

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

JUG Ancona Italy. Andrea Del Bene. Jug Marche

JUG Ancona Italy. Andrea Del Bene. Jug Marche JUG Ancona Italy SpringMVC AndreaDelBene JugMarche Cos'èSpringMVC? Spring MVC è il sotto-framework di Spring che permetti di servirsi del Framework Spring per realizzare applicazioni web. Possiamo quindi

Dettagli

Realizzazione di un software di gestione allocazione risorse e analisi dei movimenti finanziari correlati

Realizzazione di un software di gestione allocazione risorse e analisi dei movimenti finanziari correlati Facoltà di Ingegneria Corso di Studi in Ingegneria Informatica tesi di laurea Realizzazione di un software di gestione allocazione risorse e analisi dei movimenti finanziari correlati Anno Accademico 2012/2013

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

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

Applicazione: OIL Online Interactive helpdesk

Applicazione: OIL Online Interactive helpdesk Riusabilità del software - Catalogo delle applicazioni: Gestione ICT Applicazione: OIL Online Interactive helpdesk Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei sistemi informativi

Dettagli

Programmazione per il Web Specifiche di progetto A.A. 2015/2016

Programmazione per il Web Specifiche di progetto A.A. 2015/2016 Programmazione per il Web Specifiche di progetto A.A. 2015/2016 Igor Melatti June 20, 2016 1 Funzionalità Richieste Si vuole costruire un sito di commercio elettronico, usando le Servlet Java e le pagine

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

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Programmazione su Basi di Dati: Framework Hibernate Parte b versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

GEODROP APPLICATIONS. Developer. Public. Private. Reseller

GEODROP APPLICATIONS. Developer. Public. Private. Reseller GEODROP APPLICATIONS Public Developer Reseller Private Le Applicazioni di Geodrop Guida per Developer alle Applicazioni Guida alle applicazioni v1.1-it, 21 Dicembre 2012 Indice Indice...2 Cronologia delle

Dettagli

Sistemi Informativi e WWW

Sistemi Informativi e WWW Premesse Sistemi Informativi e WWW WWW: introduce un nuovo paradigma di diffusione (per i fornitori) e acquisizione (per gli utilizzatori) delle informazioni, con facilità d uso, flessibilità ed economicità

Dettagli

SVILUPPARE TEMPLATE CON ARIADNE WCM. Linguaggi e tecnologie per sviluppare siti web

SVILUPPARE TEMPLATE CON ARIADNE WCM. Linguaggi e tecnologie per sviluppare siti web SVILUPPARE TEMPLATE CON ARIADNE WCM Linguaggi e tecnologie per sviluppare siti web 1 Le componenti da considerare XML XSL + XPATH TEMPLATE REPOSITORY ACM 2 Sviluppare Template con Ariadne WCM 1. INTRODUZIONE

Dettagli