我编写了一个JAVA连接数据库,为什么只能显示出最后一行

importjava.sql.*;importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publiccl... import java.sql.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class studentInf extends JFrame
{
JTextArea info=new JTextArea();
JScrollPane Pane1=new JScrollPane();
public studentInf()
{
super("学生信息");
setSize(400,200); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Pane1.getViewport().add(info);
this.getContentPane().add(Pane1);
}

public void DBC (){
try{
String strurl="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D://我的文档//access//db.mdb";//你的ACCESS文件位置
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection(strurl);
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from student_inf");
while(rs.next())
{
info.setText(rs.getString("student_no")+"\t");
info.append(rs.getString("student_name")+"\n");

}
rs.close();
stmt.close();
conn.close();
}catch(Exception e)
{
info.setText(e.getMessage());
}
}

public static void main(String[] args) throws ClassNotFoundException {
studentInf dbc = new studentInf();
dbc.DBC();
dbc.show();

}
}
展开
 我来答
辅国兵马大都督
2008-03-20 · TA获得超过198个赞
知道答主
回答量:166
采纳率:0%
帮助的人:0
展开全部
while(rs.next())
{
info.setText(rs.getString("student_no")+"\t"); //setText会擦除原有文本。
info.append(rs.getString("student_name")+"\n");

}
改成:
while(rs.next())
{
if(infor.getText==null){
info.setText(rs.getString("student_no")+"\t");
}else
info.append(rs.getString("student_no")+"\t");
info.append(rs.getString("student_name")+"\n");

}
qn94188765
2008-03-21
知道答主
回答量:5
采纳率:0%
帮助的人:3.7万
展开全部
vector v1 = new vector()
while(rs.next())
{
vector v2 = new vector()
v2.add(rs.getString("student_no")+"\t"));
v2.add(rs.getString("student_name")+"\n"));
}
v1.add(v2);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
才景明0fP
2008-03-21 · 贡献了超过103个回答
知道答主
回答量:103
采纳率:50%
帮助的人:20.7万
展开全部
很明显的错误么 当年我也经常犯这个错 实例化对象的时候看清楚是在循环外边还是在循环里面 放到里面就是创建新对象 放外边就是一个劲循环替换一个对象 当然输出结果是最后一条了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
腾空化龙冲云霄
2008-03-20
知道答主
回答量:12
采纳率:0%
帮助的人:0
展开全部
申明一个ArrayList来存放你的数据,然后用for来遍历数据.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flsfycy
2008-03-20 · TA获得超过729个赞
知道小有建树答主
回答量:1002
采纳率:0%
帮助的人:710万
展开全部
setText()只能用于一次性赋值吧,以前的内容都将被后来添加的覆盖掉的。要使用其他控件才行哦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式