DefaultTableModel model = new DefaultTableModel();//
JTable table = new JTable( model );看以前的帖子里有人说可以用DefaultTableModel,但是怎么和数据库联系起来呢,怎么实现数据的添加,删除呢?有没有大虾能共享一下例子代码,感激不尽!!!!!!!

解决方案 »

  1.   

    我是用AbstractTableModel实现JTable和数据库相连的,大概如下,连接数据库就不再说明,可以查阅以往的帖子:
    import java.util.Vector;
    import javax.swing.table.*;Vector vect = new Vector();AbstractTableModel 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;}//设置单元格不可编辑,为缺省实现
    };
         JTable jTable1=new JTable(tm);//生成自己的数据模型
    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.getString(4));
        rec_vector.addElement(rs.getString(5));
        vect.addElement(rec_vector);//向量rec_vector加入向量vect中
                }
        tm.fireTableStructureChanged();//更新表格,显示向量vect的内容