Java viene con un conjunto integrado de herramientas para el manejo de las conexiones de red y la lectura y escritura de datos en un servidor, siempre que utilice los protocolos estándar de Internet como HTTP y FTP. En unos pocos pasos , puede crear una aplicación rápida, con una interfaz gráfica de usuario , que será subir imágenes a un servidor FTP existente. Instrucciones
1
Abre tu editor de texto favorito del entorno de desarrollo de Java y pegar el siguiente en él :
java.awt.GridLayout importación
;
import java.awt . Label ;
java.awt.event.ActionEvent importación;
java.awt.event.ActionListener importación;
java.io.BufferedOutputStream importación;
< p> java.io.File importación;
java.io.FileInputStream importación;
importación java.net.URL ;
java.net.URLConnection importación; < br >
importación javax.swing * ; .
public class UploadForm extiende ActionListener { imagen de archivo
JFrame implementa ;
servidor JTextField = new JTextField ( "");
JTextField nombre de usuario = new JTextField ( "");
JTextField imagePath = new JTextField ( "");
JButton imageBrowse = new JButton ( "Buscar imagen" ) ;
JPasswordField contraseña = new JPasswordField ( "");
JButton uploadButton = new JButton ( "upload ");
public void actionPerformed ( ActionEvent ae ) {
}
UploadForm pública () { }
void (String [] args ) { public static
}
< p >}
Este simple esqueleto clase importa todas las clases que serán necesarios en las bibliotecas estándar de Java , define los tres métodos que utilizará la aplicación , y crea los elementos de la interfaz de usuario necesarios .
2
Pega el siguiente en el método "main ":
JFrame f = new Los programadores de Java reconocerán esto como el método estándar que proporciona la entrada en su programa desde el sistema operativo. En este caso, se hace muy poco : se crea el marco que contiene la interfaz gráfica de usuario, asegura que el programa se cerrará cuando el usuario cierra el cuadro y hace que el marco visible para el usuario
< . br> 3
Pega el siguiente en el constructor " UploadForm " (el " UploadForm ()" GridLayout ( 0,2) ) ;
this.add ( imagePath ) ;
this.add ( imageBrowse ) ;
this.add ( nueva etiqueta ( " Server" ));
this.add (servidor ) ;
this.add ( nueva etiqueta ( " nombre de usuario "));
this.add ( nombre de usuario) ; < br >
this.add ( nueva etiqueta ( "Password "));
this.add (password) ;
this.add ( uploadButton ) ;
establece la apariencia de la interfaz gráfica de usuario con el gerente " GridLayout " . En primer lugar, los dos botones de la interfaz de usuario se les dice para enviar eventos de acción con el método " actionPerformed " de este programa. Entonces , el gerente GridLayout está configurado para organizar los elementos de la interfaz de usuario en una red con dos columnas y un número ilimitado de filas. Y, por último , se suman todos los elementos de la interfaz de usuario. Los asuntos de orden : . El GridLayout se inicia en la posición en la parrilla superior más a la izquierda y se llena toda la fila antes de pasar a la siguiente fila
4
Pega el siguiente en el método " actionPerformed ":
if ( . ae.getSource ( ) es igual a ( imageBrowse )) {
String s ;
JFileChooser jfc = new JFileChooser ();
jfc.showDialog ( jfc , "Elegir un archivo de imagen ");
s = jfc.getSelectedFile () getAbsolutePath ( ) .
imagePath.setText ( s ) ;
} else
if ( ae.getSource ( ) es igual a ( uploadButton ) . ) { try {
archivo f = new archivo ( imagePath.getText ());
< p> cadena urlString = " ftp://" username.getText + ( ) + " :" + password.getText ( ) + " @" + server.getText () + "/" + f.getName ( ) < br >
URL url = new URL ( urlString ) ;
conexión URLConnection = url.openConnection ();
connection.setDoOutput ( true);
BufferedOutputStream fuera = nueva BufferedOutputStream ( connection.getOutputStream ());
FileInputStream en = new FileInputStream ( f ) ;
byte [ ] buffer = nuevo octeto [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 ()); }
}
Este método es un poco más compleja , ya que el método actionPerformed tiene que hacer dos cosas. Si se hace clic en el botón " imageBrowse " , se debe presentar a los usuarios un cuadro de diálogo de selección de archivos para que puedan seleccionar un archivo de imagen de su disco duro. Y , por otro lado , si el " uploadButton " se hace clic , se debe abrir el archivo seleccionado con el navegador de imágenes , abrir una conexión FTP a un servidor ( utilizando la clase URLConnection ) , y escribir los datos desde el archivo a la web servidor.