JAVA SWING显示数据到JTable显示不了数据,求解... 200

publicclassNAME{Connectionconn=null;Statementstmt=null;publicvoidcreatConnectInstance... public class NAME { Connection conn = null; Statement stmt = null; public void creatConnectInstance(){ String strurl="jdbc:odbc:driver={SQL Server};Server=192.168.1.200;UID=sa;PWD=5332852;DataBase=smartSchedule"; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); conn = DriverManager.getConnection(strurl); stmt = conn.createStatement(); }catch(Exception e){ System.out.println(e.getMessage()); } } /* 关闭数据库连接,释放资源 */ public void destroyConnectInstance(){ try{ conn.close(); }catch(Exception e){ System.out.println(e.getMessage()); } } /* 执行SQL,查询任务单 */ public void queryLinkMan(JTable table,JScrollPane jPn){ this.creatConnectInstance(); try{ ResultSet rs = stmt.executeQuery("select * from 下单表"); //jPn = new JScrollPane(table); //table = new JTable(cellData, columnNames); DefaultTableModel tm=new DefaultTableModel(); table.setModel(tm); Vector newRow=new Vector(); String[] colNames={"批次号"}; tm.addColumn(colNames);
while(rs.next()){ newRow.add(rs.getString(1)); tm.addRow(newRow); } }catch(Exception e){ System.out.println(e.getMessage()); } this.destroyConnectInstance(); }}

实际上数据有80条

是不是因为我只是在往初始化好的JTable填充数据,遍历数据后已经在Victor里了,但是没有循环加入JTable
我现在的问题不是在Vector上,Vector应用把add方法该成addElement就是对的。我是table不能自增,他原始就4行,结果循环遍历数据库后addRows是没效果的,还是四行,他不自增加行数了。
以上问题点也解决了,原来JTable一定要放在JScorllPanl里面,但是我怎么放都是位置不对啊,放进去后滚动条也看不到!...
new NAME().queryLinkMan(this.jTable1); jTable1.setSize(new Dimension(400, 500)); JScrollPane scroller = new JScrollPane(); scroller = this.jScrollPane2; scroller.add(jTable1,0);
什么名堂?

满分奉上,会JAVA的朋友帮我看一下,其实,这就是个jScorllPane和jTable控件的应用问题,我搞得连滚动条都看不见了,表格也不能滚动,标题也看不见。代码不要写多了啊,最好简洁一点
展开
 我来答
652270805
2014-04-25 · TA获得超过107个赞
知道答主
回答量:107
采纳率:0%
帮助的人:48万
展开全部
我遇见过相同的问题
将你的实体类或list的初始化位置调调,初始化的位置不对,从而导致你每次读取的都是第一条
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友460c94d
2014-04-25
知道答主
回答量:22
采纳率:0%
帮助的人:10万
展开全部
DefaultTableModel tm=new DefaultTableModel();
String colNames=“批次号”;
tm.addColumn(colNames);
while(rs.next()){
Vector newRow=new Vector();
newRow.add(rs.getString(1));
tm.addRow(newRow);
}
table.setModel(tm);
追问
你这不是抄我的吗?我本来就是刚刚接触JAVA的,你们也稀里糊涂,出现这种错误是根本就不了解Vector用法所造成的,Vector成员add好像是添加数值,addElement是添加集合。
追答
你自己去看API吧  我只是随手帮帮你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ku...2@163.com
2014-04-25
知道答主
回答量:1
采纳率:0%
帮助的人:1384
展开全部
遍历数据后已经在Victor
追问
for(int j=0;j<newRow.size();j++)
{
System.out.println(newRow);
}
测试出来只有一个值!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式