Olá Estou com uma pequena duvida, Eu tenho que entregar um trabalho na faculdade que Anexe arquivos no Banco de Dados, o professor nao explicou nada sobre isso ainda, apenas falou pra gente estudar, eu andei estudando e Entendi uma parte do que tem que ser feito, consegui fazer os códigos para fazer upload dos arquivos em um diretorio que eu escolhi. A minha duvida é como faço pra salvar isso no banco de dados, eu vi alguns posts gente falando sobre BLOB, mas nao entendi direito. Alguem pode me ajudar ou me passar algum material mais detalhado para estudo? Obrigado. Segue os codigos que eu ja fiz.
Index.jsp<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Exemplo de upload</title>
</head>
<body>
<form action="upload" method="post" name="form" enctype="multipart/form-data">
Upload: <input type="file" name="arquivo" /><br />
<input type="submit" name="enviar" value="Enviar" />
</form>
</body>
</html>
ServletUpload.java
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
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 control.Upload;
/**
* Servlet implementation class ServletUpload
*/
@WebServlet("/upload")
public class ServletUpload extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public ServletUpload() {
super();
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
try {
if (new Upload().anexos(request, response)) {
out.print("Arquivo enviado!");
} else {
out.print("Arquivo não enviado!");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
Upload.java
package control;
import java.io.File;
import java.util.Iterator;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.io.FilenameUtils;
public class Upload {
public boolean anexos(HttpServletRequest request, HttpServletResponse response) throws Exception {
if (ServletFileUpload.isMultipartContent(request)) {
int cont = 0;
ServletFileUpload servletFileUpload = new ServletFileUpload(
new DiskFileItemFactory());
List fileItemsList = null;
try {
fileItemsList = servletFileUpload.parseRequest(request);
} catch (FileUploadException e1) {
e1.printStackTrace();
}
String optionalFileName = "";
FileItem fileItem = null;
Iterator it = fileItemsList.iterator();
do {
cont++;
FileItem fileItemTemp = (FileItem) it.next();
if (fileItemTemp.isFormField()) {
if (fileItemTemp.getFieldName().equals("filename")) {
optionalFileName = fileItemTemp.getString();
}
} else {
fileItem = fileItemTemp;
}
if (cont != (fileItemsList.size())) {
if (fileItem != null) {
String fileName = fileItem.getName();
if (fileItem.getSize() > 0) {
if (optionalFileName.trim().equals("")) {
fileName = FilenameUtils.getName(fileName);
} else {
fileName = optionalFileName;
}
String dirName = "/uploads/"; //caminho para o projeto
File saveTo = new File(dirName + fileName);
try {
fileItem.write(saveTo);
} catch (Exception e) {
}
}
}
}
} while (it.hasNext());
return true;
} else {
return false;
}
}
}
Como faço para Salvar os arquivos no Banco de Dados?