小弟是用ODBC连接的数据库..我想用Vector保存一个表里面的数据.加进去.
然后在另一个类里面new出来..在把所有的数据全部打出来..请问要怎么做啊?
import java.sql.*;
import java.util.*;public class Vector1
{
public void lianjieDB()
{
try
{
Vector ve=new Vector();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
java.sql.Connection con=java.sql.DriverManager.getConnection   ("jdbc:odbc:Myodbc","Administartor","13407316491");
java.sql.Statement str=con.createStatement();
java.sql.ResultSet rs=str.executeQuery("select * from table1");
while(rs.next())
{
String name=rs.getString(1);
String address=rs.getString(2);
ve.add(name);
ve.add(address);
}
}
catch(Exception d)
{
d.printStackTrace();
}
}
}这样写对吗? 要在别的类里面把这个VE里面的内容打出来..要怎么做啊?请教请教

解决方案 »

  1.   

    这个是最基础的问题,相信自己可以做,不过最好用ArrayList因为Vector是线程安全的比较慢,ArrayList就快多了但是不安全,根据你自己的情况选择好
      

  2.   

    都塞到一个vector中,你这样可就乱了,因为表里的数据是2维的。如果楼上所说,用ArrayList,它的成员也可以是集合类/或者使用pojo。
      

  3.   

    你这写的有点问题,最好用ArrayList+hashMap
      

  4.   

    最好用ArrayList
    不要试用Vector
    Iterator it=Vector.iterator() ;
    while(it.hashNext()){
     System.out.println(it.next());
    }
      

  5.   


    Vector()   v   =   Vector();   
      while(rs.next())   
      { Hashtable   ht=new   Hashtable();   
      ht.put("name",rs.getString(1)));   
      ht.put("address",rs.getString(2));   
      v.add(ht);;   
      }   
    这样写应该可以满足你的要求吧???
     取:   
      Hashtable   ht=null;   
      for(int   i=0;i<v.size();i++){   
      ht=(Hashtable)v.get(i);   
      out.print("one="+t.get("name"));   
      out.print("two="+t.get("address"));   
      ....   
      }
      

  6.   

    同意
    用ArrayList比较方便,
    一行数据封装到一个ArrayList中
    然后再用一个ArrayList把上面的ArrayList封进去