placing values in an array

i have an array ar[] and i want to store values in it from the databse,how will i do it?
this is just a part of the code:
 
String[] arr = null;
i nt i = 0 ;
while(rs2.next()){
String duid = rs2.getString("userid");
String ddn = rs2.getString("dn");
String dtn = rs2.getString("tn");                        
arr[i] = dtn;
i++;
}statement2.close();connection2.close();%>

i want to put the values dtn in my array arr[] and pass it to a bean.
hop u can help me on this.thanks.
LVL 1
kurisuchine22Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

jimmackCommented:
The problem is that you don't know how big the ResultSet is until you've iterated through it.

It is easier to store the data in an ArrayList so that it can "grow" as you add new elements, then convert that to an array later (or better yet, just store the ArrayList in your bean).

ArrayList arr = new ArrayList();

while...
.
.
String dtn = rs2.getString("tn");
arr.add(dtn);

You don't need the "i" counter then either.
0
JNicCommented:
I dont know the details of your application, but if it is a multi-thread-environment, I would use Vector instead of ArrayList, since it is synchronized. This is the main difference between the two classes.

Example with Vector:

import java.util.Vector;

Vector arr = new Vector();

while..
.
.
String dtn = rs2.getString("tn");
arr.addElement(dtn);

Regards,

Nic
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
tizayCommented:
thanks nic
0
Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

jimmackCommented:
I'm not happy about this.  JNic simply copied my answer with a different container.

I'll give it 24 hours before I contact CS to resolve this.
0
JNicCommented:
Sorry jimmack, I did not mean to steal your points! :-(
I just thought a Vector would be more suitable in a threaded environment since it is synchronized, and to make it simple, I used your example again, since tizay obviously is not yet a wizard in java.

Would it satisfy you, if I posted 20 points for you, or how would you like it?

Regards,

Nic
0
jimmackCommented:
Hi JNic.

If you don't mind, that would be good :-)

My comment was really for kurisuchine22.  I know you can't split 20 points, but the fact that their comment showed no recognition for my contribution really annoyed me.

Thanks JNic ;-)

(BTW: I'd use add() instead of addElement().  addElement() is not deprecated (yet), but if you use add(), you can switch between other containers - like ArrayList - without changing the methods ;-))
0
JNicCommented:
Ooooooooops - SORRY TIZAY!
I meant of course kurisuchine22 (blush)

Thanks for you comment updon addElement jimmack. I'll post some points for you ! :-)
0
tizayCommented:
how come you guys are fighting over my question?i dont want to cause arguments in this page.hope you understand.i'm just asking a question.:-)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
JSP

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.