Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1349
  • Last Modified:

Upload Image into Oracle Database using JSP

Hi, I would like to upload different type of images from the server (C:\) and save it to the database. Anyone can give me sample codes or advise me? Thanks!
0
mwcmp
Asked:
mwcmp
  • 3
  • 2
1 Solution
 
TimYatesCommented:
>  Hi, I would like to upload different type of images from the server

Upload from the server?

I guess you mean you want people to be able to select an image on their client machine, then upload it into the oracle database?

Ok, for the uploading, you will need this:

http://jakarta.apache.org/commons/fileupload/

There are examples in the download on how to use it to upload files (through the <input type="file"> html tag)

Then, for storing the images in the database, you will need to use a BLOB field:

http://www.experts-exchange.com/Databases/Oracle/Q_20935767.html

HOWEVER!!!  I can recommend NOT doing this, and storing the image on the server's harddisk, and just placing a the file location in the database.  This has the advantage that the database will stay smaller, you will not have to extract the image and work out a file name for it to display it in your webapplication, and you will be able to backup all of the images and databse quicker.  It will also be easier to debug, and extend at a later date.

I'd basically store the images inside a folder accessable to your webapplication, then store the relative path to those images in the database as a standard VARCHAR field...

Tim
0
 
mwcmpAuthor Commented:
I'd basically store the images inside a folder accessable to your webapplication, then store the relative path to those images in the database as a standard VARCHAR field...


I get your point, but can you show me some concrete examples to show me? Thanks!
0
 
TimYatesCommented:
Ok, use the FileUpload library I gave you in the first link...  There are examples in there to show you how it works...

Then, if your webapp is inside:

  tomcat/webapps/ROOT

Save the uploaded image file to

  tomcat/webapps/ROOT/uploads

Giving it a filename by using File.createTempFile (so that you don't have problems with 3 people uploading a file with the same name)

Then, store into the database "/uploads/fil019101.gif" (assuming "fil019101.gif" is the name the createTempFile returned)

Then, in your webapplication, to point to the image, and display it, you can simply put this string into a <img src="XXX"> tag (at the XXX location, and it will display in the browser...

You can also store the original filename in the database, so people can see what it was called, and not your temporary file name :-)

Hope this is what you meant :-)

Tim
0
 
mwcmpAuthor Commented:
http://jakarta.apache.org/commons/fileupload/

What should I download? I don't understand how it works!
0
 
TimYatesCommented:
http://ftp.plig.net/pub/apache/dist/jakarta/commons/fileupload/binaries/commons-fileupload-1.0.zip

Then you can add the

    commons-fileupload-1.0.jar

to your

    WEB-INF/lib

directory (in your webapplication in Tomcat)

And this document goes through how to use it :-)

http://www.onjava.com/pub/a/onjava/2003/06/25/commons.html?page=last&x-maxdepth=0
0

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now