Obiettivo della lezione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Obiettivo della lezione"

Transcript

1 Obiettivo della lezione Lezione 17 Enterprise JavaBeans (5) Vittorio Scarano Corso di Sistemi Distribuiti ( ) Laurea Specialistica in Informatica Università degli Studi di Salerno Comprendere quanto è complesso scrivere un EJB entity che la cui persistenza sia a carico del bean stesso (Bean Managed Persistent) 2 Organizzazione della lezione Due modalità diverse degli Entity EJB Entity bean e le due modalità di persistenza Le caratteristiche di un Entity Bean Bean Managed Persistent (BMP) Implementazione di un BMP Entity bean E necessario che sia scritto il codice che accede al database per poter assicurare la persistenza degli oggetti entity se lo fa lo sviluppatore, allora si ha un bean-managed persistent bean (BMP Entity Bean) altrimenti, lo fa il container e si ha un container-managed persistent bean (CMP Entity Bean) lo sviluppatore informa solamente del tipo di operazioni e della struttura del bean, poi il container a deployment time crea il codice necessario enorme risparmio di codice 3 4

2 Creazione e distruzione di Entity EJB Un esempio di creazione All atto della creazione e rimozione di un entity Se il metodo di un AccountBean è: si deve fisicamente creare nel DB di supporto (ad es.) una riga in una tabella (creazione) oppure si deve cancellare L oggetto Home dell Entity si occupa di effettuare la creazione dell entity che prende come parametri i dati necessari per riempire il record e restituisce un parametro di chiave primaria (come definito dallo sviluppatore) public AccountPK ejbcreate(string accountid, String owner) throws.. La interfaccia di home deve avere: public Account create(string accountid, String owner) throws La creazione di un entity EJB Altre caratteristiche di Entity EJB Ricerca di entity Necessario specificare, per gli entity bean-managed, uno (o più) metodi di finder() servono per poter implementare la ricerca di un dato bean corrispondono di solito ad una SELECT SQL Modifica di dati del Bean senza usare EJB ovviamente, se si usa un DB, si possono modificare i dati direttamente sul DB (utile per i legacy) e i cambi sono riflessi sull entity attenzione alla configurazione del container per i problemi di caching! Problemi di coerenza 7 8

3 Organizzazione della lezione Contesto di Entity EJB: javax.ejb.entitycontext Entity bean e le due modalità di persistenza Ereditato da javax.ejb.ejbcontext, aggiunge Le caratteristiche di un Entity Bean Bean Managed Persistent (BMP) Implementazione di un BMP Entity bean oltre a metodi per la gestione dei EJBObject (una specie di this) il metodo getprimarykey() che restituisce la chiave associata alla istanza del bean A cosa serve? essenzialmente per evitare che ci siano problemi con il riuso ed il pooling di risorse: si chiama per poter sapere ejbload() da che riga della tabella deve caricare i dati oppure si chiama per ejbremove() 9 10 BMP Entity Bean: : i metodi da implementare Metodo setentitycontext() 11 Per un BMP Entity Bean sono da implementare un certo numero di metodi: setentitycontext() ejbfindxxxx() ejbhomexxxx() ejbcreate() ejbpostcreate() ejbactivate() ejbload() ejbstore() ejbpassivate() ejbremove() unsetentitycontext() 12 se il container genera una nuova istanza (per aumentare il pool disponibile), il metodo viene chiamato subito dopo per associare il bean all ambiente memorizzare il context in una variabile membro per accessi successivi (ad es. sicurezza) definire altre risorse necessarie per il bean (senza riferimento alcuno a quali dati il bean sta rappresentando) il bean è nel pool e non contiene dati in quanto non legato a nessun oggetto EJB

4 Metodi finder: ejbfindxxx() Metodi di home: ejbhomexxxx() localizzare istanze di dati nel sistema di memorizzazione persistente. Per un BMP almeno un metodo finder deve essere definito ricerca attraverso una query (via JDBC o altro) sul DB e restituisce una primary key il bean non è più nel pool, contiene dati specifici all interno in quanto viene associato ad un oggetto EJB metodi che non si riferiscono ad una istanza di dati particolare (contare il numero di record in una tabella) una sorta di metodi statici per tutti gli entity beans di quel tipo accessibili via la Home interface Es. contare quanti righi (record) ha una tabella non applicabile, in quanto non viene influenzato alcun entity bean Metodi di creazione: ejbcreate() Metodi di post-creazione: ejbpostcreate() 15 quando un client chiama create() sull oggetto Home, allora il container chiama ejbcreate() su un bean nel pool responsabile creazione e inizializzazione possibile non crearli (se si vuole creare dati solo via DB) controllati i parametri, si usa una INSERT SQL nel DB restituisce la primary key l istanza non è più nel pool ed ha dati specifici 16 necessario definire un ejbpostcreate() per ogni ejbcreate() (con la stessa firma) viene chiamato subito dopo la ejbcreate() dopo che l oggetto EJB viene associato con i dati completare la installazione dell oggetto, settando parametri extra (potrebbero essere stati usati da dati precedentemente memorizzati nel bean) l istanza non è più nel pool, ha dati specifici e contiene eventuali dati addizionali inizializzati correttamente

5 Metodo ejbactivate() Metodo ejbload() quando un client chiama un metodo di un EJB object ma nessuna istanza è legata a quell oggetto, il container prende un bean del pool e lo rende ready (attivazione), subito dopo chiama il metodo acquisisce le risorse necessarie (es. socket) al bean non si devono leggere i dati nel bean (c è ejbload() per questo e viene chiamato subito dopo) il bean è ready per poter leggere i dati dopo la attivazione di un bean, viene chiamato questo metodo per caricare i dati del DB nel bean attraverso il metodo getprimarykey() (del contesto) il Bean reperisce informazioni che permettono di caricare i dati attraverso una query il bean è ready e contiene i dati necessari Metodo ejbstore() Metodo ejbpassivate() il container chiama il metodo per sincronizzare i dati nell oggetto con il DB aggiorna esplicitamente la rappresentazione nel DB dei dati dell oggetto (tipicamente una query UPDATE) il bean in-memory contiene gli stessi dati del DB il container chiama il metodo per far ritornare il bean nel pool di bean disponibili (passivazione) rilascia le risorse acquisite (socket, etc.) attraverso la ejbactivate() non si devono scrivere i dati nel DB (c è ejbstore() per questo ed è stato chiamato subito prima di ejbpassivate()) il bean è nel pool e non contiene più dati usabili (che sono nel DB) 19 20

6 Metodo ejbremove() Metodo unsetentitycontext() elimina i dati dal DB (non l oggetto, che viene rimesso nel pool) attraverso il metodo getprimarykey() (del contesto) il Bean reperisce informazioni che permettono di identificare i dati da cancellare (attraverso una REMOVE SQL) il bean è nel pool ed i dati che conteneva non sono più utilizzabili e sono stati cancellati anche dal DB eliminare la associazione del bean con il contesto il metodo viene chiamato quando il container vuole ridurre la dimensione del pool e vuole eliminare l oggetto rilasciare le risorse eventualmente acquisite con setentitycontext() l oggetto verrà reso disponibile per la garbage collection Alcuni commenti sui metodi finder (1) Alcuni commenti sui metodi finder (2) Tra i metodi finder, deve essere presente (almeno) Se il metodo finder di un AccountBean è: ejbfindbyprimarykey() Un finder deve restituire una PrimaryKey oppure un insieme di PrimaryKey I client non invocano mai i metodi finder sull oggetto ma sulla interfaccia quindi necessario definire nella interfaccia la controparte di ogni metodo finder definito nell EJB nell EJB deve avere lo stesso nome e signature (a parte il valore restituito) della interface con ejb iniziale e la f di Find maiuscola esempio: findbyname(string s) diventa ejbfindbyname(string s) public AccountPK ejbfindbigaccounts(int minimum) throws FinderException La interfaccia di home (locale) deve avere: public Accountlocal findbigaccounts(int minimum) throws FinderException se la interfaccia di home remota ha lo stesso metodo deve lanciare anche RemoteException 23 24

7 Organizzazione della lezione Implementazione di un BMP entity bean 25 Entity bean e le due modalità di persistenza Le caratteristiche di un Entity Bean Bean Managed Persistent (BMP) Implementazione di un BMP Entity bean 26 Complessa e tediosa un esempio (cap. 6 di Mastering EJB ) di gestione di un account Presentiamo la implementazione per grandi linee i dettagli ed il codice serviranno per il confronto con i Container-managed Persistent (CMP) Entity Beans Commento sulle interfacce tipicamente gli entity bean implementano solamente le interfacce local, in quanto tipicamente vengono chiamati solamente da altri oggetti (EJB session, servlet, etc.) che sono locali per motivi di testing, viene comunque di solito fornita una interface remota (che viene soppressa in produzione) Lo schema di AccountBean Commenti su Account e AccountLocal Sono le interfaccia (remota e locale) offerte dal container verso il client Metodi di business: deposit() withdraw() Vari metodi accessori getbalance() (e non il setbalance() ) getaccountid() e setaccountid() Differenza i metodi della interfaccia remota lanciano RemoteException 27 28

8 Commenti su AccountHome.java e AccountLocalHome.java Oggetto Home (factory) che interagisce con il bean remota e locale Metodi implementati Account create(string accountid, String ownername) e versione locale che restituisce AccountLocal Account findbyprimarykey(accountpk key) Collection findbyownername(string name) restituisce un insieme di primary keys gettotalbankvalue() indipendente da uno specifico account, restituisce il totale di tutti gli account nella banca Commenti su AccountPK.java Rappresenta la classe di primary key che viene utilizzata per la identificazione Importante caratteristica offerta al progettista poter contare su una chiave che non è una semplice estensione di ID numeriche/stringa ma che può essere adattata ad ogni circostanza Esempio: pensate alle matricole di studenti ed a come si cerca di codificare informazioni semantiche aggiuntive su una semplice codifica numerica 556/xxxx nuovo ordinamento, 56/xxxx vecchio ordinamento La primary key: AccountPK Commenti su AccountBean.java 31 public class AccountPK implements java.io.serializable { public String accountid; public AccountPK (String id) { this.accountid = id; public AccountPK () { public String tostring() { return accountid; public int hashcode() { return accountid.hashcode(); public boolean equals(object account) { return ((AccountPk) account).accountid.equals(accountid); Serializzabile Unico variabile membro Costruttori Metodi di utilità tostring() hashcode() equals() 32 Tre parti di codice da implementare i campi che rappresentano lo stato del bean che verranno caricati e memorizzati dal/nel database i metodi di business esposti attraverso interfaccia locale e remota (AccountLocal e Account) i metodi richiesti dalla specifica EJB creatori, post-creatori, finder, attivazione/passivazione, load/store Le prime due parti sono semplici da codificare mentre quella relativa alla interazione con il database risulta essere più complessa dovendo gestire tutte le interazioni di stato con il database

9 Commenti su AccountException.java Il deployment descriptor di Account (1) Una semplice gestione delle eccezioni è necessaria Anche se la classe semplicemente delega tutto ai metodi della superclasse Exception è importante poter distinguere tra eccezioni che sono generate a causa di errori nella logica del bean che gestisce un account e quelle invece generate da una altra componente del nostro sistema <ejb-jar> <enterprise-beans> <entity> <ejb-name>account</ejb-name> <home>examples.accounthome</home> <remote>examples.account </remote> <local-home>examples.accountlocalhome </local-home> <local>examples.accountlocal</local> <ejb-class>examples.accountbean </ejb-class> <persistence-type>bean </persistence-type> <prim-key-class>examples.accountpk </prim-key-class> <reentrant>false</reentrant>. Tipo del bean Nome delle varie interfacce Persistenza a carico del Bean La classe di chiave primaria Non è prevista la esecuzione multithread all interno Il deployment descriptor di Account (2) Il ciclo di vita di un BMP entity bean 35 <resource-ref> <res-ref-name>jdbc/ejbpool </res-ref-name> <res-type>javax.sql.datasource </res-type> <res-auth>container</res-auth> </resource-ref> </entity> </enterprise-beans> <assembly-descriptor> <container-transaction> <method> <ejb-name>account</ejb-name> <method-intf>local</method-intf> <method-name>*</method-name> </method>.// stesso per Account remoto Indicazione delle risorse utilizzate come JDBC dal nostro bean maggiori dettagli seguono Descrizione delle transazioni per tutti i metodi (locali e remoti) viene richiesta la gestione delle transazioni da parte del container 36 istanze non ancora create istanze create ma non ancora riempite con dati e con risorse non inizializzate istanze legate a dati specifici

10 Come connettersi ad una risorsa Una parte di AccountBean.java: getconnection() 37 Una resource factory rappresenta un fornitore di risorse di qualsiasi tipo: come JDBC driver, JMS driver o altre (accessibili con J2EE Container Architecture) Il meccanismo è gestito dal container il che permette, ad esempio, il connection pooling riutilizzo di socket Per potersi connettere ad una risorsa, si usa JNDI buona caratteristica, garantisce portabilità, etc. Un esempio in AccountBean.java un metodo getconnection() per ottenere una connessione ad un driver JDBC 38.. public Connection getconnection() throws Exception { try{ Context ctx= new InitialContext(); javax.sql.datasource ds = (javax.sql.datasource) ctx.lookup( java:comp/env/jdbc/ejbpool ); return ds.getconnection(); catch (Exception e) { e.printstacktrace() throw e; Un metodo usato in tutti gli accessi al DB Si ottiene il contesto di default settato a carico del container Si fa lookup di una risorsa definita come EJB Reference specificata nel file di deployment Si restituisce la connessione.. che viene usata così.. Una parte di AccountBean.java : ejbload() Una rilettura del deployment descriptor di Account // metodo ejbload() PreparedStatement pstmt = null; Connection conn = null; try { conn=getconnection(); pstmt = conn.preparestatement( select ownername, balance from accounts where id =? ); pstmt.setstring(1,id); ResultSet rs = pstsmt.executequery(): rs.next(); ownername = rs.getstring( ownername ); balance = rs.getdouble( balance );.. Metodo per caricare i dati nel bean in memoria Viene reperita la primary key.. poi Si ottiene la connessione al DB Si prepara lo statement SQL Lo si istanzia con la id Si esegue la query Si prelevano i risultati <resource-ref> <res-ref-name>jdbc/ejbpool </res-ref-name> <res-type>javax.sql.datasource </res-type> <res-auth>container</res-auth> </resource-ref> </entity> </enterprise-beans>.. Si indica una risorsa indicandone il nome (EJB reference) mantenuta a carico dal container il tipo la autorizzazione a carico di chi è (Application/Container) 39 40

ENTERPRISE JAVABEANS

ENTERPRISE JAVABEANS ENTERPRISE JAVABEANS Approfondimento per il corso Sistemi Distribuiti A.A. 2002/2003 Marchiori Ilaria 780070 Università Ca Foscari Venezia CENNI SULLA PROGRAMMAZIONE A COMPONENTI 3 Introduzione 3 Che cos

Dettagli

Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione

Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione Un ambiente di esecuzione che gestisce o naming di oggetti, sicurezza, concorrenza, transazioni, persistenza, distribuzione oggetti (location

Dettagli

EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti

EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti EJB Components Leonardo Mariani Esercitazione di Sistemi Distribuiti 1 Oggetti Distribuiti 2 Middleware Esplicito 3 Middleware Implicito 4 Tipica Applicazione J2EE 1/2 5 Tipica Applicazione J2EE 2/2 6

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

Luca Cabibbo. Persistenza di oggetti

Luca Cabibbo. Persistenza di oggetti AP Analisi S Analisi e Progettazione del Software Persistenza di oggetti aprile 2004 1 Persistenza di oggetti Motivazioni e contenuti Contesto applicazioni sviluppate mediante le moderne tecniche di OOA/OOD/OOP

Dettagli

JDBC. Marco Tessarotto Programmazione dei Web Server Anno Accademico

JDBC. Marco Tessarotto Programmazione dei Web Server Anno Accademico JDBC Marco Tessarotto Programmazione dei Web Server Anno Accademico 2004-2005 JDBC JDBC (Java Database Connectivity) è una API Java per accedere ed elaborare dati in una sorgente dati (di solito un db

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

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

Programmazione a oggetti

Programmazione a oggetti Programmazione a oggetti Quanti oggetti, tra di loro parlando, fanno programmi. Pilu Crescenzi piluc@dsi.unifi.it Università di Firenze Programmazione a oggetti p.1/32 Cosa è un oggetto Una scatola software

Dettagli

Programmazione Java Avanzata Programmazione Object- Oriented in Java

Programmazione Java Avanzata Programmazione Object- Oriented in Java Programmazione Java Avanzata Programmazione Object- Oriented in Java Ing. Gianluca Caminiti Testi di Riferimento (Java) Cay Horstmann Concetti di informatica e fondamenti di Java Apogeo, 2007 (Versione

Dettagli

Domande utili alla preparazione dell orale di Informatica all Esame di Stato

Domande utili alla preparazione dell orale di Informatica all Esame di Stato Domande utili alla preparazione dell orale di Informatica all Esame di Stato 1.Al livello fisico un database si appoggia ai files per contenere i suoi dati? 2.Esistono altri modelli di organizzazione oltre

Dettagli

INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE

INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE 00-PRIME PAGINE 2-07-2003 10:04 Pagina V Indice Prefazione XI PARTE PRIMA INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE 1 Capitolo 1 Le ragioni di tanto interesse 3 1.1 Enterprise in J2EE 3 Definizione

Dettagli

Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I)

Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I) Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I) Ing. Gianluca Caminiti Sommario ( OOP ) Programmazione Object-Oriented Incapsulamento, Ereditarietà, Polimorfismo Richiami

Dettagli

Serializzazione Java. Serializzazione. Calendario esercitazioni e laboratori. Applicazioni della Serializzazione

Serializzazione Java. Serializzazione. Calendario esercitazioni e laboratori. Applicazioni della Serializzazione Calendario esercitazioni e laboratori 29 Marzo esercitazione 12 Aprile esercitazione 26 Aprile laboratorio (lab721) 2 Maggio laboratorio (lab721) 3 Maggio esercitazione 9 Maggio laboratorio (???) 17 Maggio

Dettagli

Uguaglianza e copia di oggetti

Uguaglianza e copia di oggetti Uguaglianza e copia di oggetti Sommario 1. Classi Object e Class 2. Uguaglianza superficiale e uguaglianza profonda 3. Copia superficiale e copia profonda 4. Uguaglianza e copia in classi derivate 1 La

Dettagli

Definizione di classi. Walter Didimo

Definizione di classi. Walter Didimo Definizione di classi Walter Didimo Definizione di classi Fino ad ora abbiamo imparato a: creare oggetti da classi già pronte usare gli oggetti creati, invocando metodi la creazione e l uso di oggetti

Dettagli

Ereditarietà (ultima)

Ereditarietà (ultima) Ereditarietà (ultima) Classi astratte Un ibrido tra classi e interfacce Hanno alcuni metodi implementati normalmente, altri astratti Un metodo astratto non ha implementazione abstract class AccountTransaction...

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

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER

Dettagli

La classe java.lang.object

La classe java.lang.object La classe java.lang.object In Java: Gerarchia di ereditarietà semplice Ogni classe ha una sola super-classe Se non viene definita esplicitamente una super-classe, il compilatore usa la classe predefinita

Dettagli

1 EJB e Portal Component Object http://desvino.altervista.org

1 EJB e Portal Component Object http://desvino.altervista.org 1 EJB e Portal Component Object http://desvino.altervista.org In questo tutorial studiamo come sfruttare la tecnologia EJB, Enterprise JavaBean, all interno del SAP Netweaver Portal. In breve, EJB è un

Dettagli

Laboratorio di reti II: Gestione di database lato server

Laboratorio di reti II: Gestione di database lato server Laboratorio di reti II: Gestione di database lato server Stefano Brocchi brocchi@dsi.unifi.it 23 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Database 23 marzo, 2009 1 / 32 Uso di database lato

Dettagli

18 - Classi parzialmente definite: Classi Astratte e Interfacce

18 - Classi parzialmente definite: Classi Astratte e Interfacce 18 - Classi parzialmente definite: Classi Astratte e Interfacce Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/

Dettagli

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 19 - Eccezioni Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso

Dettagli

Programmazione. Cognome... Nome... Matricola... Prova scritta del 22 settembre 2014. Negli esercizi proposti si utilizzano le seguenti classi:

Programmazione. Cognome... Nome... Matricola... Prova scritta del 22 settembre 2014. Negli esercizi proposti si utilizzano le seguenti classi: Cognome................................ Nome................................... Matricola............................... Programmazione Prova scritta del 22 settembre 2014 TEMPO DISPONIBILE: 2 ore Negli

Dettagli

2011 Politecnico di Torino 1

2011 Politecnico di Torino 1 SQL per le applicazioni Call Level Interface Le richieste sono inviate al DBMS per mezzo di funzioni del linguaggio ospite soluzione basata su interfacce predefinite API, Application Programming Interface

Dettagli

CORSO DI PROGRAMMAZIONE JAVA STANDARD + ENTERPRISE EDITION

CORSO DI PROGRAMMAZIONE JAVA STANDARD + ENTERPRISE EDITION CORSO DI PROGRAMMAZIONE JAVA STANDARD + ENTERPRISE EDITION 0 DURATA 200 ore CONTENUTI Oracle PL/SQL Introduzione al PL/SQL Cenni su SQL con utilizzo di SQL*PLUS Configurazione ambiente Developer DB Classi,

Dettagli

Open Database Connectivity (ODBC)

Open Database Connectivity (ODBC) Open Database Connectivity (ODBC) Open Database Connectivity (ODBC), proposto dalla Microsoft nel 1991, fornisce un interfaccia applicativa standard che permette ad una generica applicazione di accedere

Dettagli

Modelli a Componenti e Enterprise Java Beans

Modelli a Componenti e Enterprise Java Beans Modelli a Componenti e Enterprise Java Beans Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica I Ciclo - A.A. 2010/2011 02 Modelli a Componenti e Enterprise Java Beans (base) Docente:

Dettagli

Programmazione orientata agli oggetti La classe Object, metodi e classi final, this. Object

Programmazione orientata agli oggetti La classe Object, metodi e classi final, this. Object Programmazione orientata agli oggetti La classe, metodi e classi final, this 1 La classe Negli esempi fatti nella prima parte del corso abbiamo definito alcune classi, per esempio Counter e Orologio, senza

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

Ogni ufficio è formato da 100 dipendenti, i quali hanno a loro volta 3 clienti ciascuno. Inoltre, ad ogni ufficio sono stati assegnati 4 fornitori.

Ogni ufficio è formato da 100 dipendenti, i quali hanno a loro volta 3 clienti ciascuno. Inoltre, ad ogni ufficio sono stati assegnati 4 fornitori. Tecnologia delle Basi Dati Analisi del dbms Postgresql. Luigi Cestoni Prima Parte Descrizione del Database Abbiamo realizzato un database costituito da quattro tabelle: 1. dipendente( id,nome,cognome,eta,telefono,idufficio)

Dettagli

Laboratorio di reti I

Laboratorio di reti I Laboratorio di reti I Stefano Brocchi brocchi@dsi.unifi.it 13 ottobre, 2009 Stefano Brocchi Laboratorio di reti I 13 ottobre, 2009 1 / 27 Introduzione Obiettivi del corso Aspetti di programmazione Java

Dettagli

GESTIONE DEGLI ERRORI

GESTIONE DEGLI ERRORI GESTIONE DEGLI ERRORI Spesso vi sono istruzioni critiche, che in certi casi possono produrre errori L approccio classico consiste nell inserire controlli (if else..) per cercare di intercettare a priori

Dettagli

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi: SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java Fondamenti di Informatica Ingegneria Gestionale Canale AL 1 Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel

Dettagli

Corso di Reti di Calcolatori L-A

Corso di Reti di Calcolatori L-A Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori L-A Esercitazione 6 (svolta) Java RMI Luca Foschini Anno accademico 2010/2011 Esercitazione 6 1 Specifica: il Client

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

Microsoft Access (parte 5) Query. Query. Query. Query. Creare una query

Microsoft Access (parte 5) Query. Query. Query. Query. Creare una query Microsoft Access (parte 5) Anno accademico: 2008-2009 Per estrarre informazioni da un database si utilizzano delle query : procedure di interrogazione Si può creare più query per ogni tabella Occorre avere

Dettagli

Esercitazione n 2. Obiettivi

Esercitazione n 2. Obiettivi Esercitazione n 2 Obiettivi Progettazione di una applicazione Java Utilizzo di classi come schemi Utilizzo di costruttori Utilizzo di stringhe Uguaglianza tra oggetti Utilizzo di classi come componenti

Dettagli

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1

I.I.S. G. COSSALI - ORZINUOVI DATABASE. Marzo 2017 Prof. Dario Tomasoni 1 I.I.S. G. COSSALI - ORZINUOVI DATABASE Marzo 2017 Prof. Dario Tomasoni 1 IMPOSTAZIONE 60 min = Database concetti + Esercizi; 10 min = pausa; 30 min = Linguaggio SQL; 30 min = Database prove LibreOffice

Dettagli

PRIMO MODULO. DURATA: 80 ore CONTENUTI

PRIMO MODULO. DURATA: 80 ore CONTENUTI 0 PRIMO MODULO DURATA: 80 ore CONTENUTI 1. Introduzione alla programmazione a. Cosa è la programmazione strutturata b. Strutture dati c. Come si affronta una problematica da risolvere d. Quali sono i passi

Dettagli

Utilizzando per la connessione al database un driver di Tipo 1:

Utilizzando per la connessione al database un driver di Tipo 1: Basi di Dati Esercitazione JDBC 25 maggio 2005 Paolo Cappellari Esercizi Considerando il seguente schema: Fornitori (CodiceFornitore, Nome, Indirizzo, Citta) Prodotti (CodiceProdotto, Tipo, Marca, Modello)

Dettagli

Servlet & JDBC. Alberto Belussi. anno accademico 2008/2009

Servlet & JDBC. Alberto Belussi. anno accademico 2008/2009 Servlet & JDBC Alberto Belussi anno accademico 2008/2009 Servlet: interazione con un DBMS In Java è possibile interagire con un DBMS attraverso l uso della libreria JDBC (Java Database Connectivity). http://java.sun.com/javase/technologies/database

Dettagli

Tecnologia e Applicazioni Internet 2011/12

Tecnologia e Applicazioni Internet 2011/12 Tecnologia e Applicazioni Internet 2011/12 Lezione 4 - Persistenza Matteo Vaccari http://matteo.vaccari.name/ matteo.vaccari@uninsubria.it Perché usare un DB relazionale? Per l accesso concorrente ai dati

Dettagli

Servlet & JDBC ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Servlet: interazione con un DBMS. In Java è possibile interagire con un DBMS attraverso

Servlet & JDBC ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010. Servlet: interazione con un DBMS. In Java è possibile interagire con un DBMS attraverso Servlet & JDBC 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Servlet: interazione con un DBMS In Java è possibile interagire con un DBMS attraverso l uso della libreria JDBC (Java Database Connectivity).

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

Viene richiesto di MIN CARD(S,E) = 1 UPDATE DELETE MAX CARD(S,E) = 3 INSERT UPDATE

Viene richiesto di MIN CARD(S,E) = 1 UPDATE DELETE MAX CARD(S,E) = 3 INSERT UPDATE Dato il seguente schema E/R E la sua traduzione nel seguente schema relazionale: disponibile in http://www.dbgroup.unimo.it/sire/20110513/20110513.bak Viene richiesto di 1) Risolvere la seguente interrogazione

Dettagli

1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org

1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org 1 Applicazione J2EE sul SAP WAS con SAP NWDS http://desvino.altervista.org Applicazione J2EE sul SAP WAS con SAP NWDS. Il SAP Web Application Server fornisce un framework integrato per lo sviluppo e l

Dettagli

Enterprise Java Beans e Web Services

Enterprise Java Beans e Web Services Università degli Studi di Salerno Relazione: Enterprise Java Beans e Web Services Prof. Auletta Vincenzo Partecipanti Antonio Autorino 156/000006 Nicola Vitiello 156/000001 Pasquale Paola 156/000003 Indice

Dettagli

Il TDA Dictionary. Definizione informale. I metodi del TDA Dictionary 1. Applicazioni. I metodi del TDA Dictionary 2. I metodi del TDA Dictionary 3

Il TDA Dictionary. Definizione informale. I metodi del TDA Dictionary 1. Applicazioni. I metodi del TDA Dictionary 2. I metodi del TDA Dictionary 3 Il TDA Dictionary Definizione informale Il TDA Dictionary (dizionario) modella una collezione di voci su cui è possibile effettuare delle ricerche Una voce è una coppia (chiave, elemento) Le principali

Dettagli

Polimorfismo parametrico vs polimorfismo per inclusione

Polimorfismo parametrico vs polimorfismo per inclusione Polimorfismo parametrico vs polimorfismo per inclusione Esercizio Definire il tipo di dato Stack con operazioni Push( element ) Pop() Non forzare una specifica implementazione Non forzare un tipo specifico

Dettagli

Le conversazioni. Dott. Doria Mauro

Le conversazioni. Dott. Doria Mauro Hibernate Le conversazioni Dott. Doria Mauro doriamauro@gmail.com Introduzione alle conversazioni In una applicazione reale le operazioni sono organizzate in classi controller con le funzioni di business

Dettagli

Connessione con MySQL

Connessione con MySQL Connessione con MySQL Architettura Server-Side Eventuali parametri cookie sessioni Elaborazione SELECT... DATABASE Quando i dati sono molti e la persistenza deve andare altre la sessione o la durata

Dettagli

Le transazioni. Dott. Doria Mauro doriamauro@gmail.com

Le transazioni. Dott. Doria Mauro doriamauro@gmail.com Hibernate Le transazioni Dott. Doria Mauro doriamauro@gmail.com Introduzione La demarcazione delle transazioni può essere fatta: In maniera programmatica: demarcazione all interno del codice applicativo.

Dettagli

Corso di Applicazioni Telematiche

Corso di Applicazioni Telematiche Corso di Applicazioni Telematiche A.A. 2008-09 Lezione n.12 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Una Servlet è un componente software scritto in Java,

Dettagli

03FYZ TECNICHE DI PROGRAMMAZIONE Esercitazione di Laboratorio 03 es.1 23 Marzo 2016

03FYZ TECNICHE DI PROGRAMMAZIONE Esercitazione di Laboratorio 03 es.1 23 Marzo 2016 03FYZ TECNICHE DI PROGRAMMAZIONE Esercitazione di Laboratorio 03 es.1 23 Marzo 2016 Obiettivi dell esercitazione: Utilizzo del pattern MVC Utilizzo di HashSet Introduzione alla complessità ESERCIZIO 1

Dettagli

Variabili e Metodi di classe Interfacce e Package Gestione di File in Java

Variabili e Metodi di classe Interfacce e Package Gestione di File in Java Fondamenti di Informatica Variabili e Metodi di classe Interfacce e Package Gestione di File in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Variabili di classe: Static Una variabile di classe

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

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

Le eccezioni in Java

Le eccezioni in Java Eccezioni 1 Le eccezioni in Java i tipi di eccezione sono particolari classi che contengono solo il costruttore ci possono essere più costruttori overloaded sono definite in moduli separati da quelli che

Dettagli

Oggetti. Oggetti e classi. Utilizzo di classi. Classe

Oggetti. Oggetti e classi. Utilizzo di classi. Classe Oggetti Oggetti e classi Oggetto: entità che può essere manipolata nel programma mediante l invocazione di metodi Black box dotato di:! Interfaccia pubblica " Metodi visibili " Comportamento dell oggetto!

Dettagli

Programmazione ad oggetti

Programmazione ad oggetti Programmazione ad oggetti OOP La programmazione orientata agli oggetti (Object Oriented Programming) ha l obiettivo di formalizzare gli oggetti del mondo reale e di costruire con questi un mondo virtuale.

Dettagli

Programmazione server-side: Java Servlet

Programmazione server-side: Java Servlet Programmazione server-side: Java Servlet Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.11 parte II Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Cos

Dettagli

14 - Metodi e Costruttori

14 - Metodi e Costruttori 14 - Metodi e Costruttori Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Alberi Binario in Java

Alberi Binario in Java Alberi Binario in Java Realizzare un albero binario di ricerca. L albero binario è di ricerca se esiste una relazione di ordinamento tra i valori dei nodi (valori comparabili). In particolare, dato un

Dettagli

24 - Possibili approfondimenti

24 - Possibili approfondimenti 24 - Possibili approfondimenti Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

A. Lorenzi, A. Rizzi Java. Programmazione ad oggetti e applicazioni Android Istituto Italiano Edizioni Atlas

A. Lorenzi, A. Rizzi Java. Programmazione ad oggetti e applicazioni Android Istituto Italiano Edizioni Atlas Classi e oggetti A. Lorenzi, A. Rizzi Java. Programmazione ad oggetti e applicazioni Android Istituto Italiano Edizioni Atlas Oggetti La programmazione orientata agli oggetti, OOP (Object-Oriented Programming),

Dettagli

CloneNotSupportedException clone() Object clone() protected native Object clone() throws CloneNotSupportedException this

CloneNotSupportedException clone() Object clone() protected native Object clone() throws CloneNotSupportedException this Clonazione Importante esempio di eccezione controllata è CloneNotSupportedException che può essere lanciata dal metodo nativo clone() della classe Object. La dichiarazione di clone() è la seguente: protected

Dettagli

Interfacce. Un interfaccia Java è una collezione di metodi astratti (e di costanti) Un metodo astratto è un metodo non implementato

Interfacce. Un interfaccia Java è una collezione di metodi astratti (e di costanti) Un metodo astratto è un metodo non implementato Interfacce 1 Interfacce Un interfaccia Java è una collezione di metodi astratti (e di costanti) Un metodo astratto è un metodo non implementato costituito dall intestazione senza il corpo della definizione

Dettagli

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014 Cognome................................ Nome................................... Matricola............................... Programmazione Prova scritta del 11 luglio 2014 TEMPO DISPONIBILE: 2 ore Negli esercizi

Dettagli

Ereditarietà. Ereditarietà. Ereditarietà. Ereditarietà

Ereditarietà. Ereditarietà. Ereditarietà. Ereditarietà L ereditarietà è il meccanismo attraverso cui viene implementata la relazione di specializzazione (is-a). L ereditarietà è il meccanismo attraverso cui una classe (derivata) eredita da un altra classe

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

PROVA FINALE Ingegneria del software

PROVA 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

Dettagli

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria CORSO DI FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Prof. Zambonelli, Ing. Cabri, Ing. Denti, Ing. Andrea Aime Zambonelli,

Dettagli

Il linguaggio Java. La superclasse universale Object

Il linguaggio Java. La superclasse universale Object Il linguaggio Java La superclasse universale Object La classe Object La classe Object è la superclasse, diretta o indiretta, di ogni classe La classe Object definisce lo stato ed il comportamento base

Dettagli

Il profilo EJB. Appendice C. Enterprise Java Beans: concetti di base

Il profilo EJB. Appendice C. Enterprise Java Beans: concetti di base Appendice C Il profilo EJB Si approfondisce nella presente appendice quanto illustrato per sommi capi al termine del Capitolo 2. Prima di trattare approfonditamente il profilo EJB, è riportata una breve

Dettagli

Informatica per le Scienze Umane. Introduzione al corso: programma

Informatica per le Scienze Umane. Introduzione al corso: programma Informatica per le Scienze Umane Introduzione al corso: programma 1 Obiettivi del corso Fornire le conoscenze e le competenze necessarie alla rappresentazione e al trattamento consapevole delle informazioni

Dettagli

Astrazioni sui dati : Specifica di Tipi di Dato Astratti in Java

Astrazioni sui dati : Specifica di Tipi di Dato Astratti in Java Astrazioni sui dati : Specifica di Tipi di Dato Astratti in Java 1 Specifica ed Implementazione di Tipi di Dato Astratti in Java cos è un tipo di dato astratto specifica di tipi di dati astratti un tipo

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

Remote Method Invocation

Remote Method Invocation JAVA RMI LSO 2008 Remote Method Invocation Perché RMI? L obiettivo è di permettere ad una applicazione in esecuzione su una macchina locale di invocare i metodi di un oggetto in esecuzione su un altro

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

Inserire record. Microsoft Access. Inserire/modificare record. Inserire record. Cancellare record. Inserire/modificare record

Inserire record. Microsoft Access. Inserire/modificare record. Inserire record. Cancellare record. Inserire/modificare record Inserire record Microsoft Access Maschere (II) Una maschera può essere sfruttata non solo per vedere dati ma anche per immettere nuovi record, per modificarli o per cancellarli (come in visualizzazione

Dettagli

SQL - Structured Query Language

SQL - Structured Query Language SQL - Structured Query Language Lab 05 Alessandro Lori Università di Pisa 27 Aprile 2012 Riepilogo esercitazione precedente Operatori insiemistici (UNION, INTERSECT, EXCEPT) Riepilogo esercitazione precedente

Dettagli

Prova d Esame Compito A

Prova d Esame Compito A Domanda 1 A) Si richiede di analizzare le seguenti sezioni di codice. Il candidato indichi il risultato dell esecuzione del main. public class Father { private static int counter=0; private int code; public

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

Uso di classi e oggetti. Prof. Francesco Acarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

Uso di classi e oggetti. Prof. Francesco Acarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Uso di classi e oggetti Prof. Francesco Acarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Tipi di dati Tipi primitivi: interi Java fornisce otto tipi primitivi indipendenti dall implementazione

Dettagli

RETI DI CALCOLATORI Linguaggio Java: Eccezioni

RETI DI CALCOLATORI Linguaggio Java: Eccezioni Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI RETI DI CALCOLATORI Linguaggio Java: Eccezioni Prof. Franco Zambonelli Lucidi realizzati in collaborazione

Dettagli

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012

Sviluppo 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

Dettagli

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy

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

Programmazione con Java

Programmazione con Java Programmazione con Java Classi e istanze in Java Definizione di classe in Java A meno che non si usino classi già scritte da altri, prima di poter creare un qualsiasi oggetto devo creare la sua rappresentazione:

Dettagli

Installazioni preliminari

Installazioni preliminari Installazioni preliminari È uscita la versione 6u23 dell SDK. Disponibile a: http://www.java.com/en/download/index.jsp Per installare Eclipse invece andare su: http://www.eclipse.org Stile Sono elementi

Dettagli

Tema Di Progetto 1 Descrizione

Tema Di Progetto 1 Descrizione Tema Di Progetto 1 Descrizione Acquisto On Line Applicazione Web-based per la simulazione di un flusso di acquisto di un prodotto on-line. Deve essere generata una (o più) pagine di catalogo con contenuto

Dettagli

Tesina esame Programmazione di Sistemi Mobile realizzata da Roberto Giuliani matricola Sicurezza e Permission in Android

Tesina esame Programmazione di Sistemi Mobile realizzata da Roberto Giuliani matricola Sicurezza e Permission in Android Tesina esame Programmazione di Sistemi Mobile realizzata da Roberto Giuliani matricola 633688 Sicurezza e Permission in Android La sicurezza al giorno d oggi è uno degli aspetti più importanti dell informatica!

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Esercitazione PostgreSQL Dopo aver lanciato il client grafico pgadmin III di PostgreSQL svolgere le operazioni descritte nel seguito, tenendo presenti i suggerimenti forniti

Dettagli

Esempi in Java di program.ne O-O

Esempi in Java di program.ne O-O Esempi in Java di program.ne O-O Ereditarietà Polimorfismo statico e dinamico Esercitazione laboratorio Interfaccia Comparable e Comparator 1 Gerarchia di ereditarietà Persona IS_A Docente Studente Tecnico

Dettagli

JDBC. Dispense per il corso di Ingegneria del Web

JDBC. Dispense per il corso di Ingegneria del Web JDBC Dispense per il corso di Ingegneria del Web Revisione 05/11 Giuseppe Della Penna (giuseppe.dellapenna@di.univaq.it) Dipartimento di Informatica Università degli studi dell'aquila Java Database Connectivity:

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

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