【问题标题】:Swing, Jtable , JDBC摇摆,Jtable,JDBC
【发布时间】:2013-03-22 04:57:18
【问题描述】:
  package com.officelog.manager;

  import java.awt.*;
  import javax.swing.*;
  import java.util.*;


  public class AdminControl implements Runnable{
public static void main(String[] args) {
    new AdminControl();
}

Thread t = null ;
int hour ,minute,second ;
int year,month,day ;
int Month ;


private static JFrame frame = new JFrame("Admin_Control");
static JPanel panel = new JPanel();
JLabel label,name,date,time;
JTable table ;
JScrollPane scrollpane ;
public AdminControl() {
    frame.setBounds(100, 100, 700, 600);
    frame.setResizable(false);
    frame.add(panel);

    panelSetUp();

    frame.setVisible(true);

}
private void panelSetUp() {
    panel.setLayout(null);
    panel.setBackground(Color.lightGray);
    panel.setBorder(BorderFactory.createBevelBorder(1,Color.white,   Color.white));



    time = new JLabel();
    panel.add(time);
    time.setBounds(20, 25, 70, 25);

    date = new JLabel();
    panel.add(date);
    date.setBounds(20, 75, 70, 25);

    t = new Thread(this);
    t.start();

    name = new JLabel("Name:");
    panel.add(name);
    name.setBounds(20,50,50,25);

    label = new JLabel("SuperUser");
    panel.add(label);
    label.setBounds(60, 50, 70, 25);
    label.setForeground(Color.blue);


    tableSetUp();
    JMenuBar menuBar = new JMenuBar();
    frame.add(menuBar,BorderLayout.NORTH);
    menuBar.setBorder(BorderFactory.createBevelBorder(1, Color.gray, Color.gray));

    JMenu file = new JMenu("File");
    menuBar.add(file);

    JMenu source = new JMenu("Source");
    menuBar.add(source);
}
public void run(){
    try{
        while(true){
            Calendar now = Calendar.getInstance();
            hour = now.get(Calendar.HOUR_OF_DAY);
            minute = now.get(Calendar.MINUTE);
            second = now.get(Calendar.SECOND);

            year = now.get(Calendar.YEAR); 

            Month = now.get(Calendar.MONTH);
            month = Month + 1;

            day = now.get(Calendar.DATE);
            displayDateTime();
            time.repaint();
            date.repaint();
            t.sleep(1000);
        }
        }catch(Exception e){
        e.printStackTrace();
    }
}

public void displayDateTime(){
    time.setText(hour+":"+minute+":"+second);
    date.setText(day+"/"+month+"/"+ year);
}

private void tableSetUp(){
    int row ;

    Object [][] data ={
            {new Integer(5),"Deepak","Deepak"
                ,"2013-21-03"
            }
    };
    String columnNames []={"EmployeeID" , "EmployeeName",
            "EmployeePassword","CreatedOn"};
    table = new JTable(data , columnNames);
    scrollpane = new JScrollPane(table);
    panel.add(scrollpane);
    scrollpane.setBounds(50, 200, 600, 100);
    table.setBounds(50, 100, 600, 100);
    table.setForeground(Color.BLUE);
    table.setGridColor(Color.pink);

}

} 任何人都可以告诉我如何将数据插入到数据库中的 JTable 中。这是我的代码不完整。我创建了一个表,但我不知道如何将数据从网格格式的数据库中插入其中,以便可以编辑表中的数据并在数据库中更新它。感谢您的时间和考虑

【问题讨论】:

  • 我知道如何从数据库中检索数据,但我不知道如何使用 TableModel 将数据插入到表中。
  • 您是否在 Google 上搜索过您的问题?
  • 为什么这个页面后缘的链接都没有帮助你至少成为一个初学者?你确实读过它们(至少那些标题中包含 jdbc/database 的),不是吗?
  • 不相关:a) 不要对组件进行任何手动调整大小/定位,这是 LayoutManager 的专属任务 b) 对摆动组件的访问必须发生在 EDT (无论如何,用当前时间更新标签的部分与您的问题有什么关系?)

标签: java swing jdbc jtable resultset


【解决方案1】:

好吧,将 JTable 列名称保存为 String Array,将数据保存为 two dimensional array of any type。您可以通过从数据库中检索数据来填充数据数组。

以下链接有一个示例(无数据库)

http://www.roseindia.net/java/example/java/swing/ScrollableJTable.shtml

以下是Oracle指南,非常好。

http://docs.oracle.com/javase/tutorial/uiswing/components/table.html

【讨论】:

  • 你认为如果我这样做,就可以编辑更新或删除表或任何特定值,进而更新数据库......
  • 链接包含编辑/插入值到 JTable 的方式。其余的取决于您的应用程序逻辑
  • a)roseindia 引用它完全不相关(而且如此微不足道,同时又令人费解,因为它们通常是 IMO)b)教程链接也是不相关的,尽管总是良好的开端
猜你喜欢
  • 2014-05-22
  • 2020-11-01
  • 1970-01-01
  • 2019-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-01
  • 2013-10-04
相关资源
最近更新 更多