Tecnología

Inicio

Cómo subir archivos BLOB a un hilo de base de datos Servlet

Cómo subir archivos BLOB a un hilo de base de datos Servlet


La posibilidad de subir archivos a través de un formulario HTML es una de las formas principales de que un sitio web puede ser interactivo. Usando el lenguaje de programación Java, un archivo puede ser cargado desde el ordenador de un usuario y se almacena en una base de datos para su uso futuro. El proceso consiste en un campo de tipo binario de objetos grandes (BLOB) en la base de datos. Los bytes del archivo se convierten de su forma original en un tipo BLOB, luego se coloca en la base de datos como datos binarios.

Instrucciones

Configurar entorno de

1 Abra Eclipse IDE.

2 Seleccione "Archivo", "Nuevo" y "Otros".

3 Seleccione el icono "Web". Una vez que se expande, seleccione "Dynamic Web Project" y pulse "Siguiente".

4 Tipo "blobexample" en el "Nombre del proyecto:" campo.

5 Busque la vista Explorador de paquetes en la barra lateral izquierda.

6 Haga clic en el archivo llamado "src". Seleccione "Nuevo" y luego "paquete".

7 Tipo de "burbuja" en el "Nombre:" campo y pulse "Finalizar".

Crear tabla de base de datos

8 Utilice el navegador de Internet para navegar hasta el sitio phpmyadmin que está configurado el servidor MySQL.

9 Después de iniciar sesión, haga clic en la pestaña que dice "SQL" o "Ejecutar SQL."

10 Introduzca el siguiente comando en el cuadro de entrada de SQL. Esto creará la tabla que se utiliza para almacenar los datos binarios.

CREATE TABLE 'FILE_TABLE' (

bigint 'id' (20) NOT NULL AUTO_INCREMENT,

blob 'FILE_DATA',

PRIMARY KEY ( 'id')

) ENGINE = InnoDB DEFAULT CHARSET = latin1;

11 Compruebe que la tabla se ha creado mediante la confirmación de que "FILE_TABLE" ha sido añadido a la lista de tablas en la columna de la derecha.

crear archivos

12 Busque el icono de la carpeta que se denomina "WebContent." Haga clic derecho sobre él y seleccione "Nuevo" y "Otros".

13 Busque la carpeta en la ventana emergente llamado "Web". Seleccione "JSP" y pulse "Siguiente".

14 Tipo "upload.jsp" en el "Nombre de archivo:" campo.

15 Repita los pasos anteriores para crear otro archivo llamado "page.jsp."

Editar página de carga

dieciséis Abrir "page.jsp" en una nueva ventana del editor. Esto se realiza haciendo doble clic sobre él en la ventana del explorador de paquetes.

17 Haga clic en el código que se encuentra en la nueva ventana abierta. Pulse la tecla "Ctrl" + "A" o "Inicio" "A" + A para seleccionar todo. Eliminar todo lo que se ha seleccionado.

18 Introduzca el código siguiente en la "page.jsp" el ahora en blanco:

<% @ Page = lenguaje "java"%>

<Html>

<Head>

<Title> formulario de carga </ title>

</ Head>

<Body>

<Form enctype = "multipart / form-data" action = "upload.jsp" method = post>

<Input name = tipo "archivo" = "archivo">

<Input type = "submit" value = "Enviar archivo">

</ Form>

</ Body>

</ Html>

19 Guarde el documento seleccionando "Archivo" y "Guardar".

Editar la página de resultados

20 Abrir "upload.jsp" en una nueva ventana del editor.

21 Eliminar el contenido de "upload.jsp."

22 Introduzca el código siguiente en la "upload.jsp" el ahora en blanco:

<% @ Página import =

"java.io., Java.sql., Java.util., Java.text.%>

<Html>

<%

int num = 0;

Cadena ctype = request.getContentType ();

if ((ctype! = null) && (ctype.indexOf ( "multipart / form-data")> = 0))

{

DataInputStream en DataInputStream = new (request.getInputStream ());

int = lengthofdata request.getContentLength ();

bytes byte [] = new byte [lengthofdata];

int readBytes = 0;

int totalReadbytes = 0;

mientras que (totalReadbytes <lengthofdata)

{

byteRead = in.read (bytes, totalReadbytes, lengthofdata);

totalReadbytes + = readBytes;

}

Thefile cadena = new String (bytes);

}

Conexión con = null;

PreparedStatement pstate = null;

línea de la cadena = null;

Valor de la cadena = null;

/ * **** Base de datos de configuración de inicio ** /

String url = "jdbc: mysql: // localhost: 3306 /";

Nombrebasedatos cadena = "file_upload";

controlador String = "com.mysql.jdbc.Driver";

Cadena uname = "raíz"; // Reemplazar con nombre de usuario de base de datos

Pword cadena = "raíz"; // Reemplazar con la contraseña de base de datos

/ * **** De configuración de base de datos Fin ** /

tratar{

contenido StringBuilder = new StringBuilder ();

BufferedReader entrada = new BufferedReader (nueva FileReader (saveFile));

while ((línea = input.readLine ())! = null) {

content.append (línea);

}

valor = contents.toString ();

System.out.println ( "Valor:" Valor +);

Class.forName ( "com.mysql.jdbc.Driver");

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

QueryString cadena = "INSERT INTO FILE_TABLE establece FILE_DATA = '" + valor + ";";

pstate = con.prepareStatement (queryString);

num = pstatement.executeUpdate ();

si (valor> 0)

{

%> El archivo ha sido subido y se inserta <%

}

}

catch (Exception e)

{}

}

%>

</ Html>

23 Guarde el documento seleccionando "Archivo" y "Guardar".

Crear un servidor Tomcat

24 Seleccione "Archivo", "Nuevo" y "Otros".

25 Seleccione el icono "Servidor". Una vez que se expande, seleccione "Servidor" y pulse "Siguiente".

26 Enter "Blob2dbServer" en el campo "Nombre del Servidor:" campo, y asegúrese de que el entorno de servidor es Tomcat 6.0. Pulse el botón "Finalizar".

Agregar proyecto y prueba

27 Busque la pestaña "Servidores" en la parte inferior de la ventana de Eclipse IDE.

28 Haga clic en la pestaña "Servidores" y compruebe que "Blob2dbServer" aparece. Su estado actual se debe "Stopped".

29 Haga clic en "Blob2dbServer," y haga clic en "Agregar / Quitar proyecto".

30 Seleccione "blobexample" de las opciones. Haga clic en "Agregar" y "Finalizar".

31 Haga clic en "Blob2dbServer," y haga clic en "Inicio". Utilice el navegador de Internet para navegar a la siguiente dirección:

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

Cargar un archivo y verificar si se levantan los errores.

Consejos y advertencias

  • Asegúrese de que cada línea de código Java termina con un punto y coma.
  • Asegúrese de que el código esté libre de errores lógicos, programáticos y tipográficos.
  • Para obtener más ayuda, buscar la ayuda de un programador profesional.
  • Si se producen errores en cualquier momento durante este proceso, asegúrese de que Tomcat, phpMyAdmin, MySQL y Eclipse están configurados correctamente. Se necesitan varios conductores para la conexión entre Eclipse y MySQL.