一个GUI界面上有一个表格,怎么样用JAVA写个方法,让它从数据库里的数据返回到GUI表格里,我以在网上查了很多,也没有一个结果,我对Java很感兴趣,目前自己在自学,希望前辈们能指点,指点,我将非常感谢!!
解决方案 »
- 今天面试碰到这样一个问题
- 编译器怎么导入一个不是自己写的源代码
- JScrollPane的JTtextArea显示内容定位问题
- 一到面试题
- 我的tomcat服务嚣不能关闭了(用shutdown命令)提示说duplicate name in mainfest: classes-paht!!
- 请教各位说一下SWT的线程问题
- 书上讲解JSP的句型,其中句型2用来定义变量:<%! int k=0; %> 这感吧号!不加也没事,为何?
- 哪里有免费的版本控制的软件下载吗?
- 100分求书:Java Thread Programming
- 使用JUnit+Jmockit测试Process无法取得预期结果
- 谁能帮我找份资料,关于三层体系介绍的,急需。
- 新手问题
while (rs.next()) {
String[] str = {
rs.getString("id"), rs.getString("pwd")};
defaulttablemodel.addRow(str);
}我是这样的 用的是 defaulttablemodel 的这个模型,
这个不怎么好,将就用,我就是用的他 呵呵
只有自己写的函数 楼上的方法可行 但是在处理数据时要小心 容易出现错误
以前做了一个学生管理系统就遇到这样的情形
AbstractTableModel tm;
//声明一个类AbstractTableModel对象
JTable jg_table;//声明一个类JTable对象
Vector vect;//声明一个向量对象
JScrollPane jsp;//声明一个滚动杠对象
String title[]={"职工号","职工名",
"性别","出生日期","工资"};
//二维表列名
定制表格。
实现抽象类AbstractTableModel对象tm中的方法:
vect=new Vector();//实例化向量
tm=new AbstractTableModel(){
public int getColumnCount(){
return title.length;}//取得表格列数
public int getRowCount(){
return vect.size();}//取得表格行数
public Object getValueAt(int row,int column){
if(!vect.isEmpty())
return
((Vector)vect.elementAt(row)).elementAt(column);
else
return null;}//取得单元格中的属性值
public String getColumnName(int column){
return title[column];}//设置表格列名
public void setValueAt
(Object value,int row,int column){}
//数据模型不可编辑,该方法设置为空
public Class getColumnClass(int c){
return getValueAt(0,c).getClass();
}//取得列所属对象类
public boolean isCellEditable(int row,int column){
return false;}//设置单元格不可编辑,为缺省实现
};
定制表格:
jg_table=new JTable(tm);//生成自己的数据模型
jg_table.setToolTipText("显示全部查询结果");
//设置帮助提示
jg_table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
//设置表格调整尺寸模式
jg_table.setCellSelectionEnabled(false);
//设置单元格选择方式
jg_table.setShowVerticalLines(true);//
设置是否显示单元格间的分割线
jg_table.setShowHorizontalLines(true);
jsp=new JScrollPane(jg_table);//给表格加上滚动杠
显示查询结果。
连接数据库:已给出。
数据库查询:
Statement stmt=connection.createStatement();
ResultSet rs=stmt.executeQuery
("select * from worker");
显示查询结果:
vect.removeAllElements();//初始化向量对象
tm.fireTableStructureChanged();//更新表格内容
while(rs.next()){
Vector rec_vector=new Vector();
//从结果集中取数据放入向量rec_vector中
rec_vector.addElement(rs.getString(1));
rec_vector.addElement(rs.getString(2));
rec_vector.addElement(rs.getString(3));
rec_vector.addElement(rs.getDate(4));
rec_vector.addElement(new Float(rs.getFloat(5)));
vect.addElement(rec_vector);
//向量rec_vector加入向量vect中
}
tm.fireTableStructureChanged();
//更新表格,显示向量vect的内容