Boa tarde , estava aqui fazendo uma classe para ajudar no upload de arquivos para o banco de dados , o código ficou assim :
@Component
public class UploadFoto {
public byte[] converter(UploadedFile file){
try {
byte[] foto = null;
if (file != null){
InputStream stream = file.getFile();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
IOUtils.copy(stream, baos);
foto = baos.toByteArray();
}
return foto;
} catch (Exception e) {
return null;
}
}
public String extensao(UploadedFile file){
if (file != null){
String nome = file.getFileName();
Integer tamanho = nome.length();
return nome.substring(tamanho -3,tamanho).toUpperCase();
}else
return null;
}
}
Mas depois fui tentar diminuir o código e cheguei a isto :
@Component
public class UploadFoto {
public byte[] converter(UploadedFile file){
try {
InputStream stream = file.getFile();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
IOUtils.copy(stream, baos);
byte[] foto = baos.toByteArray();
return foto;
} catch (Exception e) {
return null;
}
}
public String extensao(UploadedFile file){
try {
String nome = file.getFileName();
Integer tamanho = nome.length();
return nome.substring(tamanho -3,tamanho).toUpperCase();
} catch (Exception e) {
return "";
}
}
}
Agora a dúvida , eu sei que nos dois métodos se o parâmetro que chegar vier vazio vai dar erro , então teria problema de substituir o if pelo try ?Eu achei que o código ficou bem melhor só não sei se esta abordagem tem problemas.Obrigado !