¿Cómo cargar Java al servidor y mostrarlo? Espero que haya una implementación de código concreta.
Puedo escribir y leer a mano (con algunas dificultades).
Si tiene miedo de tener problemas, puede utilizar el componente FileUpload para incrustar el código en el servlet.
public void doPost(solicitud de solicitud de servlet http, respuesta HttpServletResponse)
Lanza ServletException, IOException{
respuesta set content type(" text/html; charset. = GB 2312 ");
PrintWriter out = respuesta . getwriter();
//Establece el directorio de almacenamiento para los archivos cargados.
cadena uploadDir = getServletContext(). getRealPath("/up ");
sistema fuera . println(uploadDir);
if (uploadDir == null)
{
Out.println("¡No se puede acceder al directorio de almacenamiento!");
Return;
}
//Crea un archivo basado en camino.
Archivo fUploadDir = nuevo archivo (uploadDir);
If (!fuploadir . existe()) {
If (!fuploadir . mkdir())/ /Crea una salida que no se puede crear si el directorio UP no existe. ...
{
Out.println("¡No se puede crear el directorio de almacenamiento!");
Regresar;
}
p>}
if (!diskfileupload . ismultipartcontent(request))
{
Out.println("Solo puede manejar archivos multiparte /form Tipo de datos datos ");
Return;
}
DiskFileUpload fu = new DiskFileUpload();
// Carga máxima de 200 millones de datos.
fu . setsizemax(1024 * 1024 * 200);
//El caché de archivos temporal se utiliza para datos de campo que superan 1 M.
fu . setsize umbral(1024 * 1024);
//Utiliza la ubicación de almacenamiento temporal predeterminada.
//fu.setRepositoryPath(...);
//Establezca la codificación del juego de caracteres para el nombre del campo público cargado y el nombre del archivo del campo de archivo.
fu . setheaderencoding(" GB 2312 ");
//Obtiene la colección de todos los objetos de campo del formulario.
List fileItems = null
Probar
{
fileItems = fu.parseRequest(request); //Analizar la carga en el solicitar archivo objeto.
}
catch (FileUploadException e)
{
Out.println("Se produjo el siguiente problema al analizar los datos:" );
e. printstacktrace(out);
Return;
}
//Procesar cada campo del formulario
Iterador I = elementos de archivo . iterador();
mientras (i.hasNext())
{
FileItem fi =(FileItem)I . next();
if (fi.isFormField()){
string content = fi . getstring(" GB 2312 ");
campo de cadena nombre = fi. get nombre del campo();
request.setAttribute(nombre del campo, contenido);
} De lo contrario {
Intente
{
ruta de cadena src = fi . getname();
if (pathSrc.trim(). igual a (" "){
Continuar
}
int inicio = ruta src . lastindexof(' \ \ ');
cadena fileName = ruta subcadena(inicio+1);
Ruta del archivoDest = nuevo archivo (directorio de carga, nombre del archivo);
fi write(ruta de destino
nombre del campo de cadena = fi . nombre ();
request.setAttribute(nombre de campo, nombre de archivo);
}catch(Exception e){
Out.println("Al guardar el archivo Se producen los siguientes problemas: ");
e. printstacktrace(out);
Regresar;
}
Finalmente / / siempre Elimina inmediatamente el archivo temporal que contiene el contenido del campo del formulario
{
fi . }
}
Tenga en cuenta que el atributo enctype="multipart/form-data " debe agregarse al formulario de la página JSP. Al enviar, indique al servidor que la página contiene un archivo.
Si todavía es problemático, simplemente use el componente de carga de Struts. Tiene FileUpload encapsulado, que es relativamente complicado de usar y fácil de dominar.
-
Si no entiendes la respuesta anterior, por favor contáctame.