Java viene fornito con un built-in set di strumenti per la gestione delle connessioni di rete e sia in lettura e scrittura di dati su un server , a condizione di utilizzare i protocolli Internet standard come HTTP e FTP . In pochi passi , è possibile creare un'applicazione veloce , con un'interfaccia utente grafica , che caricare le immagini su un server FTP esistente . Istruzioni
1
Aprite il vostro editor di testo preferito su ambiente di sviluppo Java e incollare il seguente in esso :
import java.awt.GridLayout ;
import java.awt . Etichetta ;
importazione java.awt.event.ActionEvent ;
importazione java.awt.event.ActionListener ;
importazione java.io.BufferedOutputStream ;
< p > import java.io.File ;
importazione java.io.FileInputStream ;
importazione java.net.URL ;
importazione java.net.URLConnection ; < br >
import javax.swing * , .
public class UploadForm estende ActionListener {
immagine File
JFrame implementa ;
JTextField server = new JTextField ( " " ) ;
JTextField username = new JTextField ( "") ;
JTextField imagePath = new JTextField ( "") ;
JButton imageBrowse = new JButton ( " Trova immagine " ) ;
JPasswordField password = new JPasswordField ( "") ;
JButton uploadButton = new JButton ( " Upload" ) ;
public void actionPerformed ( ActionEvent ae ) {
}
UploadForm pubblico ( ) { }
public static void main (String [] args ) { }
< p > }
Questo scheletro semplice classe importa tutte le classi che saranno necessarie dalle librerie standard di Java , definisce i tre metodi utilizzerà l'applicazione , e crea gli elementi dell'interfaccia utente necessari .
2
incolla quanto segue nel " main" metodo :
JFrame f = new Programmatori Java riconosceranno questo come il metodo standard che prevede l'ingresso nel programma dal sistema operativo . In questo caso , fa molto poco : crea la cornice che contiene l' interfaccia utente grafica , garantisce che il programma si spegne quando l' utente chiude il telaio , e rende il telaio visibile all'utente
< . br> 3
incolla quanto segue nel costruttore " UploadForm " (il " UploadForm ( ) " GridLayout ( 0,2 ) ) ;
this.add ( imagePath ) ;
this.add ( imageBrowse ) ;
this.add ( new Label ( "Server" ) ) ;
this.add ( server) ;
this.add ( new Label ( "Username "));
this.add (username) ; < br >
this.add ( new Label ( "Password "));
this.add ( password);
this.add ( uploadButton ) ;
imposta l' aspetto dell'interfaccia utente grafica utilizzando il gestore " GridLayout " . In primo luogo , i due pulsanti nell'interfaccia utente viene detto di inviare gli eventi di azione per il metodo " actionPerformed " di questo programma. Quindi , il manager GridLayout è configurato per disporre gli elementi dell'interfaccia utente in una griglia con due colonne e un numero illimitato di righe . E, infine , vengono aggiunti tutti gli elementi dell'interfaccia utente . Le questioni di ordine : . L' GridLayout inizia dalla posizione in griglia superiore più a sinistra e riempie l'intera riga prima di passare alla riga successiva
4
incollare il seguente nella " actionPerformed " metodo :
se ( . ae.getSource ( ) è uguale a ( imageBrowse ) ) {
String s ;
JFileChooser JFC = new JFileChooser ( ) ;
jfc.showDialog ( JFC , "Scegli un file di immagine ");
s = jfc.getSelectedFile ( ) getAbsolutePath ( ) .
imagePath.setText ( s ) ;
} else
se ( ae.getSource ( ) equals ( uploadButton ) . ) { try {
File f = new File ( imagePath.getText ( ) ) ;
< p > String urlString = " ftp://" + username.getText ( ) + " : " + password.getText ( ) + "@" + server.getText ( ) + " /" + f.getName ( ) ; < br >
URL url = new URL ( urlString ) ;
connessione URLConnection = url.openConnection ();
connection.setDoOutput ( true);
BufferedOutputStream fuori = nuovo BufferedOutputStream ( connection.getOutputStream ());
FileInputStream in = new FileInputStream ( f) ;
byte [ ] buffer = new byte [ 1024] ;
int i = 0;
while ( ( i = in.read (buffer ) ) > = 0 ) {
out.write (buffer , 0 , i);
}
out.close ();
in.close ();
} catch ( Exception e) {
System.out.println ( e.getMessage ()); }
}
Questo metodo è un po ' complessa , perché il metodo actionPerformed deve fare due cose . Se si fa clic sul pulsante " imageBrowse " , deve presentare agli utenti una finestra di selezione dei file per consentire loro di selezionare un file immagine dal proprio disco rigido . E , d'altra parte, se viene cliccato il " uploadButton " , si deve aprire il file selezionato con il browser di immagine , un collegamento FTP ad un server ( utilizzando la classe URLConnection ) , e scrivere i dati dal file al web server.