Solved

Uploading a file

Posted on 2004-03-21
14
222 Views
Last Modified: 2010-03-31
I need to store a file in database. How can I do this using java?
0
Comment
Question by:subysri
  • 7
  • 4
14 Comments
 
LVL 30

Accepted Solution

by:
mayankeagle earned 25 total points
ID: 10647429
You can get the contents into a byte array and store it. Have a look at:

http://javaalmanac.com/egs/java.sql/InsertBinary.html

- for storing/ reading binary data to/ from databases.
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 10647537
You can make a FileInputStream and read from the file into a byte[] array.

File f = new File ( "filename" ) ;
FileInputStream fis = new FileInputStream ( f ) ; // or new FileInputStream ( "filename" ) ;
byte[] array = new byte[f.length ()] ;
fis.read ( array ) ;
0
 
LVL 86

Assisted Solution

by:CEHJ
CEHJ earned 25 total points
ID: 10648062
You would be better to treat the insert as a stream, as in addition to not being an efficient way of making an insert, you may get out of memory errors if the file is too big if you try to load it all into memory as above. See

http://java.sun.com/j2se/1.4.2/docs/api/java/sql/PreparedStatement.html#setBinaryStream(int, java.io.InputStream, int)
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 10860205
Please proceed with that recommendation.
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 10860432
>>Accept: mayankeagle {http:#10647429}

Not the correct way to do it IMO
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 30

Expert Comment

by:mayankeagle
ID: 10860537
Well, the main problem was to know how to insert the data - not about performance, I guess.
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 10860583
It's not a performance issue - it's about a potentially fatal memory problem. The approach i suggested doesn't suffer from this drawback
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 10860654
Well - memory problems may or may not come. That's about optimizing your approach - the difference between "how to do it" and "how to do it best". I agree that your method is more efficient, but I assumed that this one only asks "how to do it" because it said nothing else ;-) So I didn't go into the details. The questioner should have responded if he faced memory problems, too.... anyways, I would be glad with a split.
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 10860754
>>The questioner should have responded if he faced memory problems,

That error may well occur only rarely, and may well be quite difficult to debug
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 10865970
Yes, and yes ;-)
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 11683347
Please proceed with that recommendation.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
countX 22 70
endX challenge 2 50
countAbc challenge 9 49
Image decoding from Camera 3 45
This was posted to the Netbeans forum a Feb, 2010 and I also sent it to Verisign. Who didn't help much in my struggles to get my application signed. ------------------------- Start The idea here is to target your cell phones with the correct…
Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now