将数据加载到表中

时间:2015-11-12 06:19:53

标签: java mysql

$http.get(url, { cache: true}).success(...);

这就是我写的。我希望通过这种方法将数据提供给表格。但它只加载表格标题。如何将表数据加载到表中?是否有一些东西需要添加到此代码?

1 个答案:

答案 0 :(得分:0)

执行df.addRow(v)时, v 变量恰好是空向量。好像你在代码中不需要df。

使用数据的完整示例

enter image description here

package javaapplication2;

import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;
import java.awt.*;
import java.sql.*;
import net.proteanit.sql.DbUtils;

public class JavaApplication2
{

    public static void main(String[] args)
    {
        Runnable r = new Runnable()
        {
            @Override
            public void run()
            {
                JFrame f = new JFrame();
                JPanel p = new JPanel();
                f.setContentPane(p);
                f.setPreferredSize(new Dimension(600, 600));
                f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

                final JTable t = new JTable();
                p.add(new JScrollPane(t), BorderLayout.CENTER);

                JButton b = new JButton("Run");
                p.add(b, BorderLayout.WEST);
                b.addActionListener(
                    new ActionListener()
                    { 
                        @Override
                        public void actionPerformed(ActionEvent ae)
                        {
                            try
                            {
                                Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                                Connection c = DriverManager.getConnection("jdbc:sqlserver://localhost;integratedSecurity=true;databaseName=stackoverflow");
                                Statement s  = c.createStatement();
                                ResultSet rs = s.executeQuery("SELECT * FROM leave_taken");
                                t.setModel(DbUtils.resultSetToTableModel(rs));
                            }
                            catch (SQLException es)
                            {
                                es.printStackTrace();
                            }
                            catch (ClassNotFoundException ecn)
                            {
                                ecn.printStackTrace();
                            }
                        }
                    });
                f.pack();
                f.setVisible(true);
            } 
        };
        EventQueue.invokeLater(r);
    }
}

应用程序启动的结果。

enter image description here

按钮后的结果"运行"按压。

enter image description here