Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/04/2009, 08:48
Avatar de elAntonie
elAntonie
 
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 3 meses
Puntos: 10
Respuesta: guardar imagenes desde un jsp en oracle

Wenas

Lo puedes guardar en un campo BLOB de la base de datos.
TABLA PEPITO
id number
fichero BLOB

Para ello deberias subir tu fichero a tu servidor, por ejemplo con oreilly (buscalo en google), y despues insertarlo en la BBDD.
Para insertarlo, primero debes insertar el registro de los campos que sean, dejando el campo BLOB a null
insert into pepito (id) values (17);
y despues actualizarlo, con un update (esta es la parte un poco mas compleja, asi que te la pongo en codigo)
Código:
  private void insertarDocumento ( Connection con,  String id, byte[] fichero) throws SQLException
   {
      String resultado = null;
      String query = "update pepito set fichero=? where id=?";
      PreparedStatement ps = con.prepareStatement( query);
      
      BLOB blob = BLOB.createTemporary(con, true, BLOB.DURATION_SESSION);
      
        OutputStream blob_os = blob.setBinaryStream(0);

      try
      {
         blob_os.write(fichero);
         blob_os.flush();
         ps.setBlob(1,blob);
         ps.setString(2,id);
         ps.executeUpdate();
         ps.close();
      }
      catch (IOException e)
      {
         resultado = "Error al insertar el documento";
         Traza.exception(this,"->insertarDocumento->IOException->", e);
      }
  }
La idea es crear un blob 'temporal' con el fichero en si (en este caso representado por un array de bytes) y hacer el update.

Y ya'ta.

Saludos