Cómo subir archivos BLOB a una base de datos Servlet Thread

Escrito por leroy walker | Traducido por aldana avale
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
Cómo subir archivos BLOB a una base de datos Servlet Thread
Cargar archivos a través de un formulario HTML es una de las principales formas en que un sitio web puede ser interactivo. (Thinkstock Images/Comstock/Getty Images)

Cargar archivos a través de un formulario HTML es una de las principales formas en que un sitio web puede ser interactivo. Usando el lenguaje de programación Java, un archivo puede subirse desde la computadora de un usuario y almacenarse en una base de datos para un uso futuro. El proceso implica un objeto binario grande (BLOB, por sus siglas en inglés), un tipo de archivo en la base de datos. Los bytes del archivo se convierten de su forma original en un tipo BLOB, y luego se coloca en la base de datos como datos binarios.

Nivel de dificultad:
Moderadamente difícil

Otras personas están leyendo

Necesitarás

  • Eclipse IDE
  • Java
  • Tomcat 6.0 o superior
  • Base de datos MySQL
  • phpmyadmin
  • Un navegador de Internet

Lista completaMinimizar

Instrucciones

    Configura el ambiente

  1. 1

    Abre el programa Eclipse IDE.

  2. 2

    Selecciona "Archivo", "Nuevo" y "Otro".

  3. 3

    Selecciona el ícono "Web". Una vez que se expanda, selecciona "Proyecto web dinámico" y presiona "Siguiente".

  4. 4

    Escribe "blobexample" dentro del campo de "Nombre del proyecto:".

  5. 5

    Ubica el punto de vista del Explorador de paquetes en la barra lateral izquierda.

  6. 6

    Haz clic con el botón derecho del ratón sobre el archivo llamado "src.". Selecciona "Nuevo" y luego "Paquete".

  7. 7

    Escribe "blob" en el campo "Nombre" y presiona "Finalizar".

    Crear la tabla de base de datos

  1. 1

    Usa tu navegador de Internet para navegar hacia el sitio phpmyadmin que está configurado sobre el servidor MySQL.

  2. 2

    Luego de registrarte, haz clic en la lengüeta que dice "SQL" o "Ejecutar SQL".

  3. 3

    Ingresa el siguiente comando dentro del cuadro de entrada de SQL. Esto creará la tabla usada para almacenar datos binarios.

    EATE TABLE 'FILE_TABLE' ( 'id' bigint(20) NOT NULL auto_increment, 'FILE_DATA' blob, PRIMARY KEY ('id') ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

  4. 4

    Verifica que la tabla se haya creado confirmando que "FILE_TABLE" ha sido agregado a la lista de tablas en la columna derecha.

    Crear archivos

  1. 1

    Localiza el ícono de la carpeta llamada "WebConten". Haz clic sobre ella con el botón derecho del ratón y selecciona "Nuevo" y "Otro".

  2. 2

    Ubica la carpeta en la ventana emergente llamada "Web". Selecciona "JSP" y luego presiona "Siguiente".

  3. 3

    Escribe "upload.jsp" dentro del campo "Nombre del archivo:".

  4. 4

    Repite los pasos de arriba para crear otro archivo llamado "page.jsp".

    Editar página de carga

  1. 1

    Abre "page.jsp" en una nueva ventana de edición. Para ello haz doble clic en él en la ventana del "Explorador de paquetes".

  2. 2

    Haz clic sobre el código encontrado en la nueva ventana abierta. Presiona "Ctrl" + "A" o "Inicio" + "A" para seleccionar todo. Borra todo lo seleccionado.

  3. 3

    Introduce el siguiente código dentro del "page.jsp" (ahora en blanco):

    <%@ page language="java" %> <html> <head> <title>upload form</title > </head> <body>

    <form enctype="multipart/form-data" action="upload.jsp" method=post> <input name="file" type="file"> <input type="submit" value="Send File" > </form>

    </body> </html>

  4. 4

    Guarda el documento seleccionando "Archivo" y "Guardar".

    Editar página de resultados

  1. 1

    Abre "upload.jsp" en una nueva ventana de edición.

  2. 2

    Borra el contenido de "upload.jsp".

  3. 3

    Introduce el siguiente código dentro del "upload.jsp" (ahora en blanco):

    <%@ page import="java.io.,java.sql.,java.util.,java.text.%> <html>

    <% int num =0; String ctype = request.getContentType();

    if ((ctype != null) && (ctype.indexOf("multipart/form-data") >= 0)) { DataInputStream in = new DataInputStream(request.getInputStream()); int lengthofdata = request.getContentLength(); byte bytes[] = new byte[lengthofdata]; int Readbytes = 0; int totalReadbytes = 0;

    while (totalReadbytes < lengthofdata) { byteRead = in.read(bytes, totalReadbytes, lengthofdata); totalReadbytes += Readbytes; }

    String thefile = new String(bytes); }

    Connection con=null; PreparedStatement pstate = null; String line = null; String value=null;

    /****Start Database Configuration*/

    String url = "jdbc:mysql://localhost:3306/"; String databasename = "file_upload"; String driver = "com.mysql.jdbc.Driver"; String uname = "root"; //replace with database username String pword = "root"; //replace with database password

    /****End Database Configuration*/

    try{ StringBuilder content = new StringBuilder(); BufferedReader input = new BufferedReader(new FileReader(saveFile)); while (( line = input.readLine()) != null){ content.append(line); }

    value = contents.toString(); System.out.println("Value:"+value); Class.forName("com.mysql.jdbc.Driver");

    con = DriverManager.getConnection(url+ databasename,uname,pword);

    String queryString = "INSERT INTO FILE_TABLE set FILE_DATA='" + value +";";

    pstate=con.prepareStatement(queryString);

    num = pstatement.executeUpdate();

    if(val>0) { %> File has been uploaded and inserted <% }

    } catch(Exception e) {} } %>

    </html>

  4. 4

    Guarda el documento seleccionando "Archivo" y "Guardar".

    Crea un servidor Tomcat

  1. 1

    Selecciona "Archivo", "Nuevo" y "Otro".

  2. 2

    Selecciona el ícono "Servidor". Una vez que se expanda, selecciona "Servidor" y presiona "Siguiente".

  3. 3

    Introduce "Blob2dbServer" dentro del campo "Nombre del servidor:" y asegúrate de que el ambiente del servidor sera Tomcat 6.0. Presiona "Finalizar".

    Agrega Proyecto y prueba

  1. 1

    Ubica la lengüeta "Servidores" en la parte inferior de la ventana de Eclipse IDE.

  2. 2

    Haz clic en la lengüeta "Servidores" y verifica que esté enumerado "Blob2dbServer". Su estado deberá ser "Detenido".

  3. 3

    Haz clic con el botón derecho del ratón en "Blob2dbServer" y clic en "Agregar/Quitar proyecto".

  4. 4

    Selecciona "blobexample" de las opciones. Haz clic en "Agregar" y "finalizar".

  5. 5

    Haz clic con el botón derecho del ratón en "Blob2dbServer" y haz clic en "Inicio". Usa tu navegador de internet para navegar en la siguiente dirección:

    http://localhost:8080/BLOBEXAMPLE/upload.jsp

    Carga un archivo y verifica si se cometió algún error.

Consejos y advertencias

  • Asegúrate de que cada línea de código Java termine con un punto y coma.
  • Asegúrate de que el código esté libre de errores lógicos, programáticos y tipográficos.
  • Para obtener asistencia adicional, busca la ayuda de un programador profesional.
  • Si aparece algún error durante este proceso, asegúrate de que Tomcat, phpmyadim, MySQL y Exclipse estén correctamente configurados. Se necesitan varios operadores para la conexión entre Eclipse y MySQL.

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles