presentación de la carga de archivos

carga de archivos


Pregunta: ¿Qué es la carga de un archivo? ¿Por qué archivo de uso de la subida?
¿Es un recurso del cliente, se pasa al servidor a través de la red.        
Dado que los datos es relativamente grande, tenemos que completar antes de que puedan guardar datos en las operaciones del lado del servidor en los archivo de carga.
            
Esencia de carga de archivos: es la corriente IO operativo.
            
Demostración: carga de archivos debe ser la forma de operar?


    
navegador:

 

1.method = post sólo puede transportar datos poste grande
2 mosto <input type name = 'archivo' = 'f'> tiene un nombre de atributo
3.encType = "multipart / form-data "


        
Del lado del servidor:


objeto de solicitud para la adquisición de información de la solicitud.
Tiene un método de la getInputStream (); un flujo de entrada de bytes puede ser adquirida por la corriente, para leer
todo el cuerpo de la petición de información.
            
Archivo Subir principio:
navegador tres cosas se ha indicado anteriormente, en el flujo de datos por el servidor leído en la resolución de los datos.
cargar los contenidos del archivo, guardados en el lado del servidor, para completar la carga de archivos.
            
En el desarrollo real, que no es necesario para analizar los datos, completar la carga de archivos. Debido a que vamos a utilizar la herramienta de carga de archivos, que han sido empaquetados,
proporcionado API, una llamada a la API de ellos, siempre y cuando se puede completar la operación de carga de archivos.
    
Commons-FileUpload usamos, es una herramienta de carga de archivo libre de código abierto proporcionado por Apache .

 

 

 
package cn.learn.web.servlet;

import java.io.IOException;
import java.io.InputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Upload1Servlet extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		//通过request获取一个字节输入流,将所有的请求正文信息读取到,打印到控制台。
		InputStream is=request.getInputStream();
		
		byte[] b=new byte[1024];
		int len=-1;
		
		while((len=is.read(b))!=-1){
			
			System.out.print(new String(b,0,len));
			
		}
		is.close();
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}

}

desarrollo web función de carga de archivos de aplicación, complete la siguiente operación de dos pasos:  
    entradas complemento de carga en una página Web
    para leer los datos de un archivo subido en un servlet, y se guardan en el disco duro del servidor.
? Cómo añadir entradas a cargar en una página web
    <La entrada del tipo = "Archivo"> etiqueta se utiliza para añadir un archivo a subir entradas en una página web, las entradas de la carga de archivos ajustes deben tenerse en cuenta:
    1, es necesario establecer la entrada de introducción de nombre propiedad, o el navegador no enviarán datos de cargar archivos.
    2, la forma debe establecerse en el valor del género enctype multipart / form-data. Cuando este valor es, el navegador carga de un archivo, el archivo de datos se incluye en el cuerpo del mensaje de petición HTTP,
        y el uso de los archivos de protocolo MIME subido descripción, para facilitar el receptor para analizar y procesar los datos cargados.
    3, formulario de envío si el puesto

Como lee los datos de carga de archivos servlet, y lo guarda en el disco duro?
    Solicitud objeto proporciona un método getInputStream, puede leer los datos presentados por el cliente para venir a través de este método.
        Sin embargo, ya que el usuario puede cargar varios archivos, leer directamente los datos finales subido programa servlet, respectivamente, y el archivo de datos analítica correspondiente
        es un trabajo muy molesto, un ejemplo.
    Para la comodidad del proceso de carga de archivos de datos de usuario, Apache de código abierto proporciona un componente de código abierto (Commons-FileUpload) que se utiliza para procesar un formulario de carga de archivos,
        un excelente rendimiento del componente, y es extremadamente fácil de usar API que permite a los desarrolladores implementar fácilmente los archivos web Subir función, logrando así la funcionalidad de carga de archivos en el desarrollo web,
        por lo general Commons-fileupload implementación del componente.

 

 

Liberadas 2417 artículos originales · ganado elogios 62 · Vistas de 200.000 +

Supongo que te gusta

Origin blog.csdn.net/Leon_Jinhai_Sun/article/details/105152559
Recomendado
Clasificación