Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more ➡
Download
Standard view
Full view
of .
Add note
Save to My Library
Sync to mobile
Look up keyword or section
Like this
23Activity
×

Table Of Contents

Introduzione a Java
Java: il linguaggio e la tecnologia
Breve storia di Java
Java il linguaggio portabile
Sviluppo di applicazioni Java
Applet Java
Tool del JDK
La prima applicazione
Il linguaggio Java
Introduzione
La programmazione a oggetti in Java
Classi, variabili e metodi
Strutturazione del codice: ereditarietà, implementazione di interfacce
I packages
Parole chiave
Controllo del flusso
Overloading e overriding
I costruttori di classe
Istanziazione delle variabili di classe
Polimorfismo e programmazione dinamica
Operatori in Java
Cosa sono le eccezioni e come si gestiscono
Propagazione delle eccezioni
Tipi di eccezioni
Appendice: programmare con le interfacce
Interfacce e polimorfismo
Ereditarietà multipla
Composizione
Interfacce che estendono altre interfacce
Interfacce e creazione di oggetti
Vantaggi delle interfacce nello sviluppo del software
Programmazione concorrente e gestione del multithreading in Java
Processi e multitasking
I thread e la Java Virtual Machine
La programmazione concorrente in Java
Creazione e terminazione di un thread
L’interfaccia Runnable
Identificazione del thread
Maggior controllo sui thread
Una fine tranquilla: uscire da run()
Bisogno di riposo: il metodo sleep()
Gioco di squadra: il metodo yield()
La legge non è uguale per tutti: la priorità
E l’ultimo chiuda la porta: il metodo join()
Interruzione di un thread
Metodi deprecati
La sincronizzazione dei thread
Condivisione di dati fra thread
Competizione fra thread
Lock e sincronizzazione
Visibilità del lock
Deadlock
Class lock e sincronizzazione di metodi statici
Comunicazione fra thread
Condivisione di dati
Utilizzo dei metodi wait() e notify()
Il metodo notifyAll()
Deamon thread
I gruppi di thread
Informazioni sui thread e sui gruppi
Thread group e priorità
Thread group e sicurezza
La classe ThreadLocal
Bibliografia
Input/Output
Stream
Le classi
La classe OutputStream
Descrizione classe
Metodi
La classe InputStream
Gli stream predefiniti
Esempi
Stream filtro
Le classi FilterOutputStream e FilterInputStream
Le classi DataOutputStream e DataInputStream
Descrizione classe DataOutputStream
Costruttore
Altre classi e metodi deprecati
Networking
Socket
La classe InetAddress
Un esempio
La classe URLConnection
I messaggi HTTP GET e POST
La classe Socket
Utilizzo delle socket (client-server)
User Datagram Protocol (UDP)
La classe DatagramPacket
La classe DatagramSocket
Descrizione della classe
Nuove estensioni e classi di utility presenti nella piattaforma Java 2
La classe HttpURLConnection
La classe JarURLConnection
Remote Method Invocation
Modelli distribuiti
La serializzazione
La serializzazione e la trasmissione degli oggetti
L’interfaccia Externalizable
Architettura di RMI
Passaggio di parametri in RMI
Gli strati RRL e TL
RMI in pratica
Download del codice da remoto
Download del codice e sicurezza
RMI e la programmazione per pattern
RMI e il pattern Factory
Attivazione di oggetti remoti
Java e i database
Che cosa sono i database?
Accesso ai database: il punto di vista applicativo
Introduzione a JDBC
Convenzioni JDBC URL Naming
Gestione dei driver: il DriverManager
Le SQLExceptions
I Warnings
I metadati
JDBC 1.1 core API: struttura del package java.sql
JDBC 2.1 core API
Nuove funzionalità di JDBC
Supporto per i tipi di dati avanzati
Estensioni Standard di JDBC 2 (Optional Package)
Estensioni standard di JDBC 2.1
JNDI Data Sources
Connection Pooling
Transazioni distribuite
Rowsets
CachedRowSet
JDBCRowSet
WebRowSet
Java Beans
La programmazione a componenti
La specifica Java Beans
Il modello a componenti Java Beans
Proprietà
Introspezione
Personalizzazione
Persistenza
Eventi
Deployment
Guida all’implementazione dei JavaBeans
Le proprietà
Un esempio di Bean con proprietà bound
Eventi Bean
Un esempio di Bean con eventi
Introspezione: l’interfaccia BeanInfo
Esempio
Personalizzazione dei Bean
Serializzazione
Abstract Windows Toolkit
Il package AWT
Swing e JFC
Una panoramica su AWT
Componenti: contenitori e controlli
I Layout
// layout
Esecuzione dell’applicazione
Riepilogo
Componenti AWT e Peer
La gerarchia Component
Identità
Posizione e dimensioni
Visibilità
Focus
Altre proprietà
Container
Top-level window
La classe Window
La classe Frame
La classe Dialog
Un esempio su Frame e Dialog
Contenitori non-window
List
Choice
Un esempio sulle liste selezionabili
ScrollBar
Canvas
Menu
MenuComponent e MenuContainer
MenuBar
MenuItem
CheckboxMenuItem
PopupMenu
MenuShortcut
I layout
Layout e constraint
LayoutManager, Component e Container
Dimensionamento
Il metodo pack()
FlowLayout
GridLayout
BorderLayout
GridBagLayout
Custom layout
Gli eventi
Il modello gerarchico in Java 1.0
Il delegation model in Java 1.1
I ruoli nella gestione degli eventi
Il sistema grafico
I componenti
Gli oggetti AWTEvent
I listener
Gestione degli eventi in AWT
I listener e i loro metodi
I componenti e gli eventi
Interazioni tra gestori di eventi
Eventi e thread
Interazioni bidirezionali
La grafica
Colori
La classe Graphics
Le immagini
Il supporto per la stampa
Stampa di componenti
Stampa di testo
Componenti custom
I componenti Swing
Introduzione: differenze tra Swing e AWT
Il padre di tutti i componenti Swing: JComponent
I Top Level Container
JFrame
JDialog
Gerarchia di contenimento
Progettazione Top Down di interfacce grafiche
La gestione degli eventi
Il modello a eventi di Swing
Il pattern Observer
I controlli di base
Bottoni
I menu
Le Action: un modo alternativo di gestire gli eventi
Descrizione dell’API
Esempio pratico
Controlli avanzati
JTextField
JPasswordField
JComboBox
JList
JSlider
JTextArea
Sviluppare un’applicazione grafica complessa
Pannelli specializzati
JSplitPane
JTabbedPane
JDesktopPane e JInternalFrame
Accessori e decorazioni
JOptionPane
JFileChooser
JFileChooser()
Pluggable Look & Feel
Border
Conclusioni
Che cosa è una Applet?
Differenze tra Applet e applicazioni
La prima semplice Applet: HelloWorld.java
Passaggio di parametri: AppletWithParameter
Il codice HTML per l’Applet
Il metodo init()
Il metodo start()
Il metodo stop()
Il metodo destroy()
Il metodo paint()
I browser e il ciclo di vita delle Applet
Il metodo main nelle Applet
AppletContext
Comunicazione tra Applet nello stesso contesto
Comunicazione tra Applet in contesti differenti
La sicurezza
Il modello SandBox
Le Applet firmate
Le Applet e l’interfaccia grafica: da AWT a Swing
Java Plug-in™
Internazionalizzazione delle applicazioni
L’interfaccia grafica internazionale
Data entry
Oltre la sintassi
La gestione dei font
Localizzazione: l’oggetto java.util.Locale
Creazione di risorse localizzate: oggetto java.util.ResourceBundle
ResourceBundle: utilizzo e regole di naming
L’utilizzo dei file di testo
Le classi ListResourceBundle e PropertyResourceBundle
La formattazione
La formattazione dei numeri
Formattazione personalizzata di cifre
Formattazione personalizzata
Formattazione di date e orari
Formattazione predefinita
Formattazione personalizzata delle date
Gestione dei messaggi
Messaggi composti
Confronto fra caratteri
Ordinamento
Migliorare l’efficienza delle operazioni di ordinamento
La classe BreakIterator
Java e XML
Che cosa è XML
Struttura di un documento XML
Elaborazione di documenti XML
JDOM
Java XML binding
Che cosa scegliere?
Publishing di documenti
Integrazione di applicazioni
SOAP
Servlet API
La Servlet API
Soluzione full java
Implementazione e ciclo di vita di un Servlet
Inizializzazione di un Servlet
Il resto della vita: i metodi doGet(), doPost() e service()
La vita è piena di imprevisti: la gestione delle eccezioni
Come interagire con i Servlet: richieste e risposte
Domandare è lecito: HttpServletRequest
Gli headers associati alla chiamata
Rispondere è cortesia: HttpServletResponse
La gestione degli header nella risposta
Distruzione di un Servlet
L’habitat di un Servlet: il Servlet Context
L’interazione con gli altri oggetti del contesto
Il context e le applicazioni distribuite
Resource Abstraction
Il context e la versione della API utilizzata
I Servlet e l’internazionalizzazione
Invocazione diretta dell’URL
Invocazione per mezzo di un form HTML
Il tag SERVLET
Terminazione corretta dei Servlet
Il mantenimento dello stato
Modifica della invocazione
Cookie
Le sessioni
Cancellazione di una sessione
Session tracking e disattivazione dei cookie
Web Applications
WAR Files
La directory WEB-INF
La programmazione di una Web Application
Java Server Pages
Pagine web a contenuto dinamico
Tecnologie server side
Generazione dinamica di pagine web
Che cosa è una Java Server Page
Un semplice esempio
Elaborazione di una pagina: JSP e Servlet
Gli elementi che compongono una Java Server Page
scripting element
Scripting element
Linguaggi di script
Oggetti impliciti
Qualche esempio
Action element
Action e script
Standard action
JSP e JavaBeans
L’azione jsp:useBean
Scope e oggetti impliciti
L’azione jsp:getProperty
L’azione jsp:setProperty
L’azione jsp:include
L’azione jsp:forward
L’azione jsp:param
L’azione jsp:plugin
Directive
La direttiva page
La direttiva include
La direttiva taglib
Gestione degli errori
Error page
Quoting convention
Sintassi alternativa XML
Tag extension
tag extension
Tag handler
Cooperazione tra azioni JSP
Definizione di scripting variables
Validazione in fase di traduzione
Configurazione e deployment
Il file web.xml
Il Tag Library Descriptor
Java e CORBA
Object Management Group
I servizi CORBA
Le basi CORBA
Architettura CORBA
Invocazione CORBA
Interfaccia e funzionalità di un ORB
Interoperabilità tra ORB
Tools e implementazioni CORBA
Interface Definition Language
Sintassi e caratteristiche
IDL in pratica
Tipi base
Module e interface
Attributi e metodi
Classi Holder
Classi Helper
Tipi strutturati
Sequence e array
Exception
Definizione IDL
Implementare l’oggetto remoto
Implementare la classe Server
Implementare il Client
Eseguire l’esempio
Client e server stub
Un possibile miglioramento
CORBA Naming Service
Struttura del Naming Service
Attivazione automatica con VisiBroker
Portable Object Adapter (POA)
POA in pratica
Parametri per valore
Una possibile soluzione
Serializzazione in CORBA
Valuetype
Introspezione CORBA
Interface Repository (IR)
Dynamic Invocation Interface (DII)
Callback
Utilizzare gli EJB
L’habitat dei Bean
I servizi di sistema
Resource Management
Pooling di Entity Beans
Pooling di Session Beans
La gestione della concorrenza
Le transazioni
La gestione della persistenza
Mapping dei dati e modello di memorizzazione
Servizio di Naming
Gli Entity Beans
I metodi di ricerca
La sincronizzazione con il database: metodi ejbLoad() ed ejbStore()
L’interfaccia EntityBean
La gestione del contesto
Il deploy in 1.0 e 1.1
La gestione delle eccezioni
La persistenza del Bean e l’interfacciamento con il database
Ciclo di vita di un Entity Bean
I Session Beans
Stateless Beans
Stateful Beans
Un esempio completo
Entity Bean
CMP, BMP e ciclo di vita
Metodi di ricerca
Session Bean
Il client
La gestione delle transazioni
Introduzione alle transazioni: il modello ACID
Lo Scope transazionale
Significato dei valori transazionali
Approfondimenti sul database e integrità dei dati
Gestione del livello di isolamento in EJB
Scelta del livello di isolamento: il giusto compromesso
Gestione esplicita delle transazioni
Bean non transazionali
La gestione esplicita delle transazioni
La gestione delle transazioni dal punto di vista del server
Considerazioni sulla gestione manuale delle transazioni
La gestione delle eccezioni nell’ambito delle transazioni
Gestione della sicurezza dal JDK 1.1 a Java 2
Il modello Sandbox
La sicurezza nel linguaggio e nella JVM
Il Class Verifier
I fase: controlli interni (internal checks)
II fase: verifica durante l’esecuzione
Il Class Loader
Un esempio di Class Loader
Il Security Manager
Java 2 SDK policy
Permessi (Permission)
Policy Files
Javadoc
Commenti doc
Funzionamento
Utilizzo
Fonti
Doclet
Altri esempi
Jumpstart (JS)
JS: utilizzo
JS: file generati
JS: tag per commenti doc
JS: opzioni
Indice analitico
0 of .
Results for:
No results containing your search query
P. 1
Manuale.pratico.di

Manuale.pratico.di

Ratings:

5.0

(1)
|Views: 18,588|Likes:
Published by api-3862569

More info:

Published by: api-3862569 on Oct 19, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See More
See less

03/18/2014

pdf

text

original

You're Reading a Free Preview
Pages 19 to 133 are not shown in this preview.
You're Reading a Free Preview
Pages 152 to 311 are not shown in this preview.
You're Reading a Free Preview
Pages 330 to 748 are not shown in this preview.
You're Reading a Free Preview
Pages 767 to 796 are not shown in this preview.
You're Reading a Free Preview
Pages 815 to 942 are not shown in this preview.

Activity (23)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
g_ish liked this
marco_bergomi liked this
c-it liked this
classc67 liked this
Antonio Martino liked this
davy_7569 liked this
barcellona6 liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->