oracle jtabel,如何从JTable中的数据库中获取数据?

我正试图在JTable中显示数据库中的数据。

这是我的主要课程ActionListener的一部分...

if(e.getSource()==jjb)

{

String j[] = null;

Vector r = new Vector();

Vector finl = new Vector();

try

{

d10.connection();

int b = d10.getclmncnt();

for(int g = 1; g<=b+1;g++)

{

j = new String[g];

}

for(int g = 1; g<=b;g++)

{

j[g] = d10.gettableclmn(g);

}

Vector v = new Vector();

for(int g = 1; g<=b;g++)

{

v.addElement(j[g]);

}

int a = d10.getrwcnt();

System.out.println("no of rows are :::: "+a);

r = d10.getalldata(b);

JTable t = new JTable(r,v);

t.setLayout(null);

TableColumn tc;

for(int hh = 0;hh

{

tc = t.getColumnModel().getColumn(hh);

tc.setWidth(75);

}

JScrollPane js = new JScrollPane(t);

js.setBounds(10, 100, 1000, 500);

p5.add(js);

p5.repaint();

}

catch (ClassNotFoundException e1)

{

e1.printStackTrace();

}

catch (SQLException e1)

{

e1.printStackTrace();

}

}这是我与数据库连接的类...

public void connection()throws SQLException, ClassNotFoundException

{

Class.forName("oracle.jdbc.driver.OracleDriver");

System.out.println("Driver Loaded");

Properties p = new Properties();

p.setProperty("user","system");

p.setProperty("password", "oracle10");

p.setProperty("url","jdbc:oracle:thin:@Suneel-PC:1521:XE");

c = DriverManager.getConnection(p.getProperty("url"),p.getProperty("user"),p.getProperty("password"));

System.out.println("connected");

}

public String gettableclmn(int b2)

{

String s = null;

int fh = b2;

try

{

Statement ss = c.createStatement();

ResultSet rs = ss.executeQuery("select * from data");

ResultSetMetaData rsmd = rs.getMetaData();

s = rsmd.getColumnName(fh);

System.out.println("columns names are "+rsmd.getColumnName(fh));

}

catch (SQLException e)

{

e.printStackTrace();

}

return s;

}

public int getclmncnt()

{

int h = 0;

ResultSetMetaData rsmd;

try {

Statement ss = c.createStatement();

ResultSet rs = ss.executeQuery("select * from data");

rsmd = rs.getMetaData();

h = rsmd.getColumnCount();

}

catch (SQLException e)

{

e.printStackTrace();

}

return h;

}

public Vector getalldata(int b)

{

int d = b;

String j = null;

Vector rr = new Vector();

Vector v = new Vector(d);

try

{

Statement s = c.createStatement();

ResultSet r = s.executeQuery("select * from data");

while(r.next())

{

v.add(r.getInt(1));

v.add(r.getInt(2));

v.add(r.getInt(3));

v.add(r.getInt(4));

v.add(r.getInt(5));

v.add(r.getInt(6));

v.add(r.getInt(7));

v.add(r.getInt(8));

v.add(r.getInt(9));

v.add(r.getInt(10));

v.add(r.getInt(11));

v.add(r.getString(12));

}

rr.add(v);

}

catch (SQLException e)

{

e.printStackTrace();

}

return rr;

}

public int getrwcnt()

{

ResultSet r;

int j = 0;

try

{

Statement s = c.createStatement();

r = s.executeQuery("select count (*) from data");

r.next();

j = r.getInt(1);

}

catch (SQLException e)

{

e.printStackTrace();

}

return j;

}当我运行这段代码时,只有第一个结果显示在JTable中,但是当我调用function d10.getrwcnt();时,它将输出为79行。我的代码有什么问题?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值