Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Laboratorio N° 3
Laboratorio N° 3
PRÁCTICA N° 1
1
Full Stack Java Developer
Laboratorio N° 3
errorDetail.setTitle("Error de validación");
errorDetail.setDetail("El formulario tiene algunos errores de
validación");
if (validationErrorList == null) {
validationErrorList = new ArrayList<>();
errorDetail.getErrors().put(fe.getField(),
validationErrorList);
}
PRACTICA N° 2
EXCEPTION HANDLING
PRACTICA N° 3
SUBIDA DE ARCHIVOS
2
Full Stack Java Developer
Laboratorio N° 3
"mediafile";
/**
* Crea el la ubicación de la carpeta para almacenar los
* archivos subidos por el cliente.
*/
public void init() {
try {
Files.createDirectories(Paths.get(STORAGE_LOCATION));
} catch (IOException ex) {
throw new StorageException("No se pudo crear el
almacén de archivos: " + STORAGE_LOCATION);
}
}
/**
* Guarda un archivo en el almacén de archivos
* a partir de un MultipartFile enviado en una solicitud
http.
*/
public String store(MultipartFile file) {
String originalFilename = file.getOriginalFilename();
String filename = UUID.randomUUID() + "." +
StringUtils.getFilenameExtension(originalFilename);
if (file.isEmpty()) {
throw new StorageException("No se puede almacenar
un archivo vacío " + originalFilename);
}
try {
InputStream inputStream = file.getInputStream();
Files.copy(inputStream,
Paths.get(STORAGE_LOCATION).resolve(filename),
StandardCopyOption.REPLACE_EXISTING);
} catch (IOException ex) {
throw new StorageException("Falló al almacenar el
archivo " + originalFilename);
}
return filename;
}
/**
* Carga un archivo como un Resource que puede
* ser retornado en una solicitud http, a partir
* del nombre/ubicación del archivo.
*/
public Resource loadAsResource(String filename) {
try {
Path path =
Paths.get(STORAGE_LOCATION).resolve(filename);
Resource resource = new
3
Full Stack Java Developer
Laboratorio N° 3
UrlResource(path.toUri());
if (resource.exists() || resource.isReadable()) {
return resource;
} else {
throw new MediaFileNotFoundException("El
archivo no ha sido encontrado: " + filename);
}
} catch (MalformedURLException ex) {
throw new MediaFileNotFoundException("El archivo
no ha sido encontrado: " + filename);
}
}
/**
* Elimina un archivo a partir de su
* nombre/ubicación.
*/
public void delete(String filename) {
Path path =
Paths.get(STORAGE_LOCATION).resolve(filename);
try {
FileSystemUtils.deleteRecursively(path);
} catch (IOException ex) {
// lo dejamos pasar
}
}
PRACTICA N° 4
CONTROLADOR PÚBLICO
4
Full Stack Java Developer
Laboratorio N° 3
RETO DE LA SESIÓN
USUARIOS