olá pessoal, tenho uma tela em HTML onde o usuario clicka em “procurar arquivo” e então ele seleciona o arquivo e envia para o servlet.
Até ai tudo bem, mas preciso saber como que eu recebo esse arquivo no meu servlet e salvo este arquivo em um banco de dados MySql …
Alguém tem algum material que eu possa dar uma estudada ?
Obrigado pela atenção. :lol:
Estou com uma duvida … no exemplo passado pelo rof20004 o dono do tuto coloca o form como sendo do tipo “multipart/form-data”.
No exemplo dele, ele queria fazer um upload de uma imagem para o servidor, mas no meu caso eu quero fazer upload de uma tabela de excel, neste caso, meu form tb tem que ser do tipo “multipart/form-data” ?
hamister… eu faço assim, para excel:
[code]<%@ page import =“br.com.simcard.Upload” %>
<%@ page language=“java” contentType=“text/html; charset=ISO-8859-1” pageEncoding=“ISO-8859-1”%>
Arquivo para Upload :
Upload
Aguarde, carregando...
Isso pode levar alguns minutos.
Voltar
servlet:
package servlet.br.com.simcard;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import br.com.simcard.Upload;
@WebServlet("/ServletUpload")
public class ServletUpload extends HttpServlet{
private static final long serialVersionUID = 1L;
public ServletUpload() {
super();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
boolean isMultipartContent = ServletFileUpload
.isMultipartContent(request);
if (!isMultipartContent) {
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br>");
out.println("Erro no Nome do Arquivo<br/>");
out.println("</center>");
out.println("</body>");
out.println("</html>");
return;
}
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
try {
List<FileItem> fields = upload.parseRequest(request);
Iterator<FileItem> it = fields.iterator();
while (it.hasNext()) {
out.println("<tr>");
FileItem fileItem = it.next();
//boolean isFormField = fileItem.isFormField();
if (fileItem.getName() != null) {
try {
HttpSession session = request.getSession();
String login = (String) session.getAttribute("loginUsuario");
if (new Upload().anexos(login, fileItem.getName(), response)) {
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br>");
out.println("Arquivo gravado com Sucesso!");
out.println("</center>");
out.println("</body>");
out.println("</html>");
} else {
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br>");
out.println("Erro ao enviar arquivo!<br><br> Nome e/ou Tipo Inválido(s)");
out.println("</center>");
out.println("</body>");
out.println("</html>");
}
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br/>" + "<br/>" + "<br/>"
+ "<a href='uploadArquivo.jsp'>Voltar</a>");
out.println("</center>");
out.println("</body>");
out.println("</html>");
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
out.println("</table>");
} catch (FileUploadException e) {
e.printStackTrace();
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br>");
out.println("Erro Interno");
out.println("</center>");
out.println("</body>");
out.println("</html>");
}
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br>");
out.println("Erro Interno");
out.println("</center>");
out.println("</body>");
out.println("</html>");
out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body>");
out.println("<center>");
out.println("<br/>" + "<br/>" + "<br/>"
+ "<a href='uploadArquivo.jsp'>Voltar</a>");
out.println("</center>");
out.println("</body>");
out.println("</html>");
out.close();
}
}
Classe que o Servlet manda:
package br.com.simcard;
import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.http.HttpServletResponse;
import jxl.read.biff.BiffException;
public class Upload {
public boolean anexos(String login, String caminho, HttpServletResponse response)
throws Exception, IOException, BiffException,
ClassNotFoundException, SQLException {
if ((caminho != null)) {
File file = new File(caminho);
System.out.println(file);
if (file.toString().contains("TELECOM")) {
//LeituraArquivoPOI vr = new LeituraArquivoPOI(file, login);
VerificarRegistroTelecom vr = new VerificarRegistroTelecom(file, login);
} else if (file.toString().contains("CTR")
|| file.toString().contains("NANOCOMM")
|| file.toString().contains("TMPORTO")) {
VerificarRegistroCtr vr = new VerificarRegistroCtr(file, login);
} else if (file.toString().contains("GATEWAY")) {
VerificarRegistroGate vr = new VerificarRegistroGate(file, login);
} else {
System.out.println("Nome do arquivo inválido");
return false;
}
}
return true;
}
}[code]
abs