Después de cargar el archivo de Word Spring MVC, puede obtener una vista previa de los métodos o pasos de implementación.
carga de archivos springmvc
1 Agregar paquete jar:
commons-fileupload-1.2.2.jar
commons-io- 2.0.1.jar
lperson.java Agregue atributos para implementar métodos get y set
Cadena privada photoPath;
2.hidden path="id"/ >
7 nombre:
8 edad:
9 foto: >
El cuadro de carga de archivos en la línea 9 anterior no puede tener el mismo nombre y tipo diferente que el atributo del objeto de entidad.
Configuración del controlador
1 12. La función de carga de archivos implementa el analizador de carga de archivos de configuración
2 @RequestMapping( value={"/saveOrUpdate" },método =RequestMethod.POST)
3 cadena pública saveOrUpdate(Persona p,
4 @RequestParam("foto") archivo MultipartFile,
5 HttpServletRequest request p>
6 ) lanza IOException{
7 if(! file.getOriginalFilename(); //obtiene el nombre del archivo de la carga
12 FileUtils.writeByteArrayToFile( new File( dir,filename), file.getBytes());
13
14 p.setPhotoPath("/upload/"+filename); //establece la ruta donde la imagen se encuentra
15
16 System.out println("upload over." + nombre de archivo);
17 }
18 ps.saveOrUpdate(p);
19 return "redirect:/person/list.action"; //redirect
20 } p>
3. La función de carga de archivos implementa el analizador de carga de archivos de configuración spring-mvc.xml
1
2 3 class="org.springframework.web.multipart.CommonsMultipartResolver" 2CommonsMultipartResolver"> 4 5 & lt;/bean> ) 6 7 La unidad de maxUploadSize es bytes: 10485760 = 10M El nombre de identificación debe escribirse así 1 Directorio de recursos de mapeo 2 Tres archivos siguientes comunes nombres Método: Función de carga de archivos (función mejorada: evita la sobrescritura del cambio de nombre de archivo) fileName = UUID.randomUUUID().toString() + extName; fileName = System.nanoTime() + extName; fileName = System.currentTimeMillis() + extName; 1 if(!file.isEmpty()){ 2 ServletContext sc = request.getSession().getServletContext(); 3 String dir = sc.getRealPath("/upload"); 4 String filename = archivo. nanoTime(); 8 String _ext = filename.substring(filename.lastIndexOf(".")) 9 filename = _lTime + _ext; 10 11 FileUtils.writeByteArrayToFile(nuevo archivo(dir,nombre de archivo), file.getBytes()); 12 13 p.setPhotoPath(" / subir/"+nombre de archivo); 14 15 System.out.println("subir."+nombre de archivo); 16 } Visualización de fotografías personList.jsp 1 ${p.photoPath} >p>