Programmazione Java Avanzata
|
|
- Gregorio Riccio
- 8 anni fa
- Visualizzazioni
Transcript
1 Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì
2 Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [ JDBC API Documentation [
3 Accesso ai dati Ogni applicazione ha bisogno di un sottosistema che si occupi di salvare le informazioni Per motivi di integrità e di gestione, le informazioni non possono stare tutte in RAM In genere si utilizzano dei meccanismi che rendono trasparente allo sviluppatore il modo con cui lo stato interno degli oggetti viene salvato Si parla quindi di Persistenza degli oggetti e di Persistence Layer
4 Accesso ai dati Le modalità di storage, però, variano in modo ampio Database Relazionali Database Non-relazionali (document-based / NoSQL) Database Object-Oriented Flat Files Servizi Vari (LDAP) Inoltre l'implementazione dei singoli accessi può avere le sue complessità
5 Accesso ai dati Ogni API infatti può essere implementata in modi diversi e avere modalità di accesso differenti Inoltre i dati potrebbero non essere presenti fisicamente sulla macchina Per questo nasce la necessità di usare API universali che astraggano questa complessità
6 CRUD Ogni sistema di persistenza deve fornire almeno quattro funzionalità: Create Read Update Delete
7 JDBC Java DataBase Connectivity È una API che definisce l'accesso ad un database Fornisce metodi per effettuare query ed aggiornare i dati JDBC è orientato ai database relazionali Le classi JDBC sono contenute nel package java.sql and javax.sql
8 JDBC JDBC è una API universale per i Relational DBMS Il linguaggio di interrogazione è SQL...ma come ben sappiamo spesso ogni produttore di DBMS aggiunge le sue estensioni ad SQL, rendendolo incompatibile
9 JDBC JDBC si compone di due parti: API: l'interfaccia con cui lo sviluppatore accede alle funzionalità Driver: in genere scritto dal produttore del DBMS; lo sviluppatore difficilmente conoscerà il suo funzionamento
10 JDBC
11 JDBC Classi fondamentali: DriverManager Connection Statement PreparedStatement ResultSet
12 JDBC: DriverManager DriverManager si occupa di fornire la connessione più adatta ad un DBMS La connessione, infatti, viene creata specificando una stringa detta URL DriverManager astrae la gestione del singolo driver
13 JDBC: DriverManager Ogni JDBC Driver, alla prima inizializzazione, si registra presso DriverManager Chiamando getconnection(), DriverManager cerca tra tutti i driver registrati quello che soddisfa la url specificata Url JDBC: jdbc:<driver>:<host_url> jdbc:mysql://localhost:3306/mydb jdbc:microsoft:sqlserver://localhost;databasename=my db;user=youruser;password=yourpwd
14 JDBC: Connection Connection gestisce una connessione al database Permette di creare due tipi di statement: Statement: normale query, da eseguire una volta PreparedStatement: query parametrizzata È importante chiudere sempre la connessione (con il metodo close() ), perché altrimenti il Garbage Collector non può liberare le risorse
15 JDBC: Statement In JDBC, uno Statement è un oggetto che permette di inviare una dichiarazione SQL al database Possiede un metodo executequery(string) che restituisce un ResultSet (array di risultati) stmt.executequery( SELECT * FROM Studenti );
16 JDBC: PreparedStatement I PreparedStatement, invece, hanno dei parametri PreparedStatement ps = conn.preparestatement( "SELECT * FROM STUDENTI WHERE id =?" ); ps.setint(1, ); ps.executequery();
17 DAO Data Access Object (pattern) È un oggetto che fornisce un'interfaccia astratta ad un database Fa da tramite tra l'applicazione e il Persistence Layer Disaccoppia, quindi, l'applicazione dai dettagli implementativi come il tipo di DBMS, lo schema, ecc.
18 DAO
19 DAO
20 DAO: vantaggi Separazione rigorosa tra due parti importanti di ogni applicazione, che in genere evolvono in parallelo Moduli maggiormente riusabili Integrazione semplice con framework che forniscono questa funzionalità
21 Programmazione Java Avanzata Web Development
22 HTTP Protocollo alla base del Web Richiesta/Risposta Testuale Stateless: ogni richiesta è indipendente da tutte le altre Pochi metodi di richiesta (GET, POST, altri poco usati) per incanalare tutte le funzionalità Completamente in chiaro
23 HTTP Request/Response
24 HTTP Un server, generalmente, si occupa di fornire, a richiesta, il contenuto di file I browser sono in grado di interpretare i file testuali scritti in linguaggio HTML Nella maggior parte dei casi, quindi, la risposta del server sarà contenuto scritto secondo HTML
25 HTTP Request Se l'utente scrive la URL: Il browser invierà al server la seguente stringa: GET /index.html HTTP/1.1 HOST User-Agent: Mozilla/5.0
26 HTTP Request Se si possono richiedere solo nomi di file, come si può strutturare una applicazione webbased?
27 HTTP Request Si può scrivere la URL in modo che contenga dei parametri: oltre a chiedere la pagina index.html passiamo al server le variabili var1 (pari a 9) e var2 (pari ad 1) Si può usare il metodo POST che permette di inviare parametri nello stesso formato ma non immersi nella URL
28 HTTP Response Il server sta in ascolto sulla porta TCP 80 Quando riceve la richiesta, cerca il file con quel nome e ne invia il contenuto al client Fin qui c'è poco di applicativo!
29 Web Server I Web Server al giorno d'oggi non sono più semplici fornitori di HTML Moduli di estensione, script e server ad-hoc intercettano le richieste e permettono di manipolare l'input tramite linguaggi di programmazione L'output deve essere sempre HTML, ma i file possono essere generati al volo e non più essere fisicamente presenti sul server
30 Protocollo Stateless La mancanza di salvataggio dello stato interno è uno dei più grandi pregi e difetti dell'http Pro: Vedi XKCD: [ Velocità di esecuzione Basse richieste di memoria Contro: Ogni applicazione ha bisogno di sapere cosa ha fatto l'utente in precedenza
31 Protocollo Stateless: soluzioni Una prima soluzione è stato l'uso dei cookie Piccoli file di testo, salvati sul client, che contengono variabili e i loro valori I cookie vengono inviati al server ad ogni request Esempio: se l'utente fornisce username e password, possono essere salvate in un cookie (insieme ad altri dati); ad ogni richiesta i cookie vengono inviati al server e quindi il server legge lo stato dai cookie
32 Cookie: Problematiche File di testo non crittografati Chiunque può leggerli sul pc o durante l'invio, quindi non si possono salvare dati sensibili File di testo scrivibili da chiunque Lato server, non possiamo fidarci di quello che abbiamo scritto precedentemente nei cookie Insicuri Un sito B, sfruttando vulnerabilità, potrebbe avere accesso ai cookie del sito A
33 Variabili di sessione Per risolvere il problema dei cookie si usano le variabili di sessione, lato server Variabili salvate sul server Si assegna ad ogni utente un hash (detto Session ID) Se l'utente fornisce l'hash al server, il server lo identifica e può consultare i dati che lo riguardano
34 Variabili di sessione vs. Cookie Rimane il problema: come fa il server ad identificare un client come rappresentante di un utente? Se le variabili sono lato server non c'è modo di saperlo Si scrive il Session ID in un cookie Il Session ID è un hash, è molto difficile indovinarlo Anche se il Session ID viene intercettato, ha una durata limitata nel tempo (una sessione o anche meno)
35 Perché il Web? Con tutti questi problemi da risolvere la domanda sorge spontanea Perché il Web è ovunque Quasi 2 miliardi di persone al mondo usano Internet Perché il Web è semplice HTML non è un linguaggio di programmazione, ma definisce solo come le informazioni vengono presentate Perché il Web è standard Esistono organismi come il W3C che si preoccupano di creare degli standard in modo che ognuno abbia la stessa esperienza sul Web, indipendentemente dal browser, dal sistema operativo e dal dispositivo
36 Java e HTTP Esistono librerie e classi per gestire le richieste/risposte HTTP direttamente in Java Ma gestire le richieste a questo livello molto basso: È dispendioso (è un problema abbastanza indipendente e non ha senso gestirlo volta per volta) È soggetto ad errori Sottrae tempo lavorativo che potrebbe essere dedicato alla business logic
37 Servlet Le Servlet sono classi Java che rispondono ad HTTP Request Definiscono delle modalità di risposta (ad esempio, in caso di GET o POST) e poi gestiscono in modo automatico il resto Per esempio, viene mantenuto lo stato nelle variabili di sessione senza che lo sviluppatore debba preoccuparsi
38 Servlet Una Servlet restituisce, in genere, HTML Anche se può restituire XML o altro Una Servlet viene inizializzata dal server, e, a questo punto, gestisce ogni request in un thread a parte Le Servlet sono definite nella libreria di JavaEE
Bibliografia: Utenti e sessioni
Bibliografia: Utenti e sessioni http: protocollo stateless http si appoggia su una connessione tcp e lo scambio nel contesto di una connessione si limita a invio della richiesta, ricezione della risposta.
DettagliIntroduzione 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
Dettagli19. 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
DettagliJDBC. 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
DettagliProgrammazione 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
DettagliTitolare del trattamento dei dati innanzi descritto è tsnpalombara.it
Decreto Legislativo 196/2003 Codice in materia di protezione dei dati personali COOKIE POLICY La presente informativa è resa anche ai sensi dell art. 13 del D.Lgs 196/03 Codice in materia di protezione
DettagliLezione 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
Dettagli2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.
ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione
DettagliIl Protocollo HTTP e la programmazione di estensioni Web
Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);
DettagliSiti 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
DettagliProtocolli 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
DettagliProgettazione 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
DettagliReti di Calcolatori. Il Livello delle Applicazioni
Reti di Calcolatori Il Livello delle Applicazioni Il DNS Gli indirizzi IP sono in formato numerico: sono difficili da ricordare; Ricordare delle stringhe di testo è sicuramente molto più semplice; Il Domain
DettagliLezione 1 Introduzione
Lezione 1 Introduzione Ingegneria dei Processi Aziendali Modulo 1 Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano I Servizi Web Un Servizio Web è un implementazione software
DettagliJDBC 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
DettagliArchitettura 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
DettagliSviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012
+ Sviluppo Applicazioni Mobile Lezione 12 JDBC + Cosa vediamo nella lezione di oggi Oggi analizzeremo insieme una specifica tecnologia Java per l accesso e la manipolazione di basi di dati relazionali
DettagliScheda 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
DettagliSviluppo Applicativi personalizzati per automatizzare le Analisi SPC
Sviluppo Applicativi personalizzati per automatizzare le Analisi SPC Query sui Databases Aziendali Report Automatici Interfacce Operatore Analisi Statistiche Minitab Web: www.gmsl.it Email: info@gmsl.it
DettagliBasi 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
DettagliChat. Connettersi a un server di chat. Modificare le impostazioni di chat. Ricevere impostazioni chat. Chat
2007 Nokia. Tutti i diritti sono riservati. Nokia, Nokia Connecting People, Nseries e N77 sono marchi o marchi registrati di Nokia Corporation. Altri nomi di prodotti e società citati nel presente documento
DettagliAl 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,
DettagliSiti web centrati sui dati (Data-centric web applications)
Siti web centrati sui dati (Data-centric web applications) 1 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 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliSWIM 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
DettagliIntroduzione alle applicazioni di rete
Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza
DettagliConcetti base. Impianti Informatici. Web application
Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet
DettagliApplicazioni web centrati sui dati (Data-centric web applications)
Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento
DettagliProgramma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione
Programma del Corso Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione (I prova scritta) (II prova scritta) Interazione fra linguaggi di programmazione e basi di dati Cenni
DettagliMODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
DettagliCollegamento remoto vending machines by do-dots
Collegamento remoto vending machines by do-dots Ultimo aggiornamento 23 marzo 2011 rev1 - Stesura iniziale 18/10/2010 rev2 - Approfondimenti 12/11/2010 rev3 Riduzione dei contenuti per una lettura generica
DettagliJDBC 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
DettagliLezione n 1! Introduzione"
Lezione n 1! Introduzione" Corso sui linguaggi del web" Fondamentali del web" Fondamentali di una gestione FTP" Nomenclatura di base del linguaggio del web" Come funziona la rete internet?" Connessione"
DettagliIl Web Server e il protocollo HTTP
Corso PHP Parte 2 Il Web Server e il protocollo HTTP E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta la esegue e restituisce il risultato al browser,
DettagliLuca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client
Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un
DettagliEsercizi 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
DettagliIRSplit. Istruzioni d uso 07/10-01 PC
3456 IRSplit Istruzioni d uso 07/10-01 PC 2 IRSplit Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Installazione 4 3. Concetti fondamentali
DettagliGenLApp Generazione Lista di Applicazioni. Design Patterns. Classi Essenziali. Modellazione Dati. Progettazione della Linea di Prodotti
Progettazione della Linea di Prodotti GenLApp Generazione Lista di Applicazioni Progettazione della Linea di Prodotti Classi Essenziali Responsabilità sui 3 Livelli Architetturali Descrizione delle Responsabilità
DettagliClient - Server. Client Web: il BROWSER
Client - Server Client Web: il BROWSER Il client Web è un applicazione software che svolge il ruolo di interfaccia fra l utente ed il WWW, mascherando la complessità di Internet. Funzioni principali Inviare
DettagliLaboratorio 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
DettagliNelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento
I protocolli del livello di applicazione Porte Nelle reti di calcolatori, le porte (traduzione impropria del termine port inglese, che in realtà significa porto) sono lo strumento utilizzato per permettere
DettagliPROVA FINALE Ingegneria del software
PROVA FINALE Ingegneria del software Ing. Jody Marca jody.marca@polimi.it Laboratorio N 4 Cos è JDBC 2 JDBC significa Java Database Connectivity Standard definito da Sun MicroSystems per connettere programmi
DettagliData 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
DettagliSistemi centralizzati e distribuiti
Sistemi centralizzati e distribuiti In relazione al luogo dove è posta fisicamente la base di dati I sistemi informativi, sulla base del luogo dove il DB è realmente dislocato, si possono suddividere in:
DettagliCORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)
Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni
DettagliCome funziona il WWW. Architettura client-server. Web: client-server. Il protocollo
Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client
DettagliEsercitazione 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
DettagliArchitettura 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
DettagliDATABASE 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
DettagliPHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas
PHP A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas Copyright Istituto Italiano Edizioni Atlas Programmazione lato server PHP è un linguaggio che estende le funzionalità
DettagliStampe in rete Implementazione corretta
NETWORK PRINT SERVERS Articolo Stampe in rete Implementazione corretta Created: June 3, 2005 Last updated: June 3, 2005 Rev:.0 INDICE INTRODUZIONE 3 INFRASTRUTTURA DELLE STAMPE IN RETE 3. Stampa peer-to-peer
DettagliCapitolo 4 Pianificazione e Sviluppo di Web Part
Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,
DettagliReti di Telecomunicazione Lezione 7
Reti di Telecomunicazione Lezione 7 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Il protocollo Programma della lezione file transfer protocol descrizione architetturale descrizione
DettagliUniversità 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
DettagliAspetti 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,
DettagliSMS API. Documentazione Tecnica YouSMS HTTP API. YouSMS Evet Limited 2015 http://www.yousms.it
SMS API Documentazione Tecnica YouSMS HTTP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione
DettagliStrutturazione logica dei dati: i file
Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer
DettagliProgetto di Applicazioni Software
Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla
DettagliCorso 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
DettagliIntroduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico
Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle
DettagliArchitettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)
Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione
DettagliScaletta. 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
DettagliInternet e posta elettronica. A cura di Massimiliano Buschi
Internet e posta elettronica A cura di Massimiliano Buschi Concetti fondamentali Internet www Tcp/ip Browser Terminologia Esistono un sacco di termini con cui bisogna famigliarizzare http url Link Isp
DettagliIndirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet
Indirizzi Internet e Protocolli I livelli di trasporto delle informazioni Comunicazione e naming in Internet Tre nuovi standard Sistema di indirizzamento delle risorse (URL) Linguaggio HTML Protocollo
DettagliSpecifiche Tecnico-Funzionali
AuthSIAR - Modulo di Autenticazione e Autorizzazione Sardegna IT S.r.l. Analisi Tecnico-Funzionale Assessorato all Agricoltura della Regione Sardegna SIAR Sistema Informativo Agricolo Regionale AuthSIAR
DettagliAccess. P a r t e p r i m a
Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di
DettagliIntroduzione all elaborazione di database nel Web
Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un
DettagliJDBC per l accesso Java a DB. Tito Flagella tito@link.it
JDBC per l accesso Java a DB Tito Flagella tito@link.it JDBC fornisce una libreria standard per l accesso a database relazionali Non è un acronimo ufficiale ma è comunemente interpretato come Java DataBase
DettagliJava: la libreria delle classi
Java: la libreria delle classi Applet anatomia di un applet cenni di html La libreria JDBC per l accesso ai database il package java.sql 213 Applet Un applet è una applicazione Java che ha una forma particolare
DettagliSITI-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
DettagliCorso di Informatica Modulo T3 B1 Programmazione web
Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo
DettagliI Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo
I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?
DettagliFramework 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
DettagliDatabase 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
DettagliBDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D
BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software BDX 3D Editor è un programma che permette di navigare ed editare texture in un qualsiasi modello 3D.E compatibile con i software in grado di esportare
DettagliLezione 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
DettagliImplementazione 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
DettagliHBase Data Model. in più : le colonne sono raccolte in gruppi di colonne detti Column Family; Cosa cambia dunque?
NOSQL Data Model HBase si ispira a BigTable di Google e perciò rientra nella categoria dei column store; tuttavia da un punto di vista logico i dati sono ancora organizzati in forma di tabelle, in cui
DettagliCorso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP
Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate
DettagliLa sicurezza nel Web
La sicurezza nel Web Protezione vs. Sicurezza Protezione: garantire un utente o un sistema della non interazione delle attività che svolgono in unix ad esempio i processi sono protetti nella loro esecuzione
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliJDBC: 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
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)
DettagliManuale d'uso del Connection Manager
Manuale d'uso del Connection Manager Edizione 1.0 2 Indice Informazioni sull'applicazione Gestione connessioni 3 Operazioni preliminari 3 Aprire l'applicazione Gestione connessioni 3 Visualizzare lo stato
DettagliRiccardo 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
DettagliNon 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
DettagliIntroduzione alla Progettazione per Componenti
Introduzione alla Progettazione per Componenti Alessandro Martinelli 6 ottobre 2014 Obiettivo del Corso Il Progetto Software Reale Il Componente Software La Programmazione Ad Oggetti Fondamenti di Informatica
DettagliDBMS 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
DettagliTelerilevamento e GIS Prof. Ing. Giuseppe Mussumeci
Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme
DettagliCorso 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
DettagliIntroduzione 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
DettagliUtilizzo dei Cookie Cosa sono i cookie? A cosa servono i cookie? cookie tecnici cookie, detti analitici cookie di profilazione
Utilizzo dei Cookie Questo sito utilizza i cookie. Utilizzando il nostro sito web l'utente accetta e acconsente all utilizzo dei cookie in conformità con i termini di uso dei cookie espressi in questo
Dettagli1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client
RETI INFORMATICHE - SPECIFICHE DI PROGETTO A.A. 2013/2014 1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014 Il progetto consiste nello sviluppo di un
Dettagliappunti delle lezioni Architetture client/server: applicazioni client
Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un esempio particolarmente
DettagliIl Web-Service SDMX dell ISTAT
Il Web-Service SDMX dell ISTAT Versione: 1.0.0 Data: 26/06/2014 Autore: Approvato da: Modifiche Versione Modifiche Autore Data Indice dei contenuti 1 Introduzione... 4 2 Esempio d uso... 5 2.1 Riferimento
DettagliUtilizzo dei Cookie Cosa sono i cookie? A cosa servono i cookie? cookie tecnici cookie, detti analitici cookie di profilazione
Utilizzo dei Cookie Questo sito utilizza i cookie. Utilizzando il nostro sito web l'utente accetta e acconsente all utilizzo dei cookie in conformità con i termini di uso dei cookie espressi in questo
Dettagliconnessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI
Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti
DettagliRealizzazione di una chat su protocollo HTTP
Università di Pisa Università di Pisa Percorsi Abilitanti Speciali (PAS) Percorsi Abilitanti Speciali (PAS) Realizzazione di una chat su protocollo HTTP Realizzazione di una chat su protocollo HTTP Feo
DettagliURI. Introduzione. Pag. 1
URI Introduzione Gli URI (Universal Resource Indentifier) sono una sintassi usata in WWW per definire i nomi e gli indirizzi di oggetti (risorse) su Internet. Questi oggetti sono considerati accessibili
DettagliCorso 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