Cómo usar springmvc para cargar archivos
En el desarrollo de aplicaciones web actual, springMvc se usa ampliamente. Ahora resumiré la aplicación de springMvc para cargar archivos adjuntos. Espero que sea útil para todos, echemos un vistazo al efecto.
1. Prepare el paquete jar
Nota: los paquetes jar anteriores son indispensables
2.1. Preparar el archivo de configuración springMvc.xml
2.2.archivo de configuración web.xml
2.1. Preparar el archivo de configuración springMvc.xml
2.2.
2.1. Preparar el archivo de configuración springMvc.xml
2.2. Información de configuración de web.xml
3. Preparar la página
4. >
@Controller//spring usa anotaciones para administrar beans
@ RequestMapping("/upload")//Exponer rutas de recursos y clases de acceso al mundo exterior
clase pública UploadController {
/**
* Función de carga
* @return
* @throws IOException
*/
@RequestMapping("/uploadFile")//Exponga la ruta del recurso hacia afuera para acceder a este método
public String uploadFile(MultipartFile imgFile, HttpServletRequest req) lanza IOException{ p>
if(imgFile ! = null ){
//Obtener el flujo de entrada del archivo
InputStream inputStream = imgFile.getInputStream();
// Generar aleatoriamente el nombre del archivo, el motivo es: evitar que los archivos adjuntos cargados sobrescriban los archivos adjuntos anteriores
String randName = UUID.randomUUUID().toString();//nombre de archivo aleatorio
// Obtener el nombre del archivo original
String originalFilename = imgFile.getOriginalFilename();
// Obtener la extensión del archivo (por ejemplo, jpg?png...).
Extensión de cadena = FilenameUtils.getExtension(originalFilename);
// Nuevo nombre
Cadena newName = randName+".".+extensión;
//Obtener servletContext
ServletContext servletContext = req.getSession().getServletContext();
/Obtener rootPath
String rootPath = servletContext.getRealPath ("/");
File file = new File(rootPath, "upload");
// Determina si el archivo existe, si no, crea el archivo
if(!file.exists()){
file.mkdirs();
}
/Obtener la ubicación de la salida final p>
FileOutputStream fileOutputStream = new FileOutputStream(new File( file,newName));
//Subir el archivo adjunto
IOUtils.copy(inputStream, fileOutputStream);
p>}
devolver nulo;
}
}
}
}