Java 是否向JTable和数据库(phpMyAdmin)添加一行? initComponents(); 试一试{ ResultSet res=statement.executeQuery(“SELECT*FROM banh”); ResultSetMetaData RSMD=res.getMetaData(); NumberOfColumns=RSMD.getColumnCount(); AttributeName=新字符串[NumberOfColumns]; 对于(int i=0;i
,这是一个不好的例子:Java 是否向JTable和数据库(phpMyAdmin)添加一行? initComponents(); 试一试{ ResultSet res=statement.executeQuery(“SELECT*FROM banh”); ResultSetMetaData RSMD=res.getMetaData(); NumberOfColumns=RSMD.getColumnCount(); AttributeName=新字符串[NumberOfColumns]; 对于(int i=0;i,java,phpmyadmin,Java,Phpmyadmin,,这是一个不好的例子: 变量名不应以大写字符开头 硬编码数组大小以支持10000行是错误的方法。您也可以使用动态向量 相反,请从中找到的数据库示例中查看表。此示例使用的向量将根据结果集中找到的行数而增长 我不知道如何将行添加到JTable和数据库中 您可以使用DefaultTableModel的addRow(…)方法动态添加数据。请阅读API或搜索论坛/网站,以查找使用addRow(…)方法的示例 对于数据库插入,可以从上的教程开始 initComponents(); try {
表。此示例使用的向量将根据结果集中找到的行数而增长
我不知道如何将行添加到JTable和数据库中
您可以使用DefaultTableModel
的addRow(…)
方法动态添加数据。请阅读API或搜索论坛/网站,以查找使用addRow(…)方法的示例
对于数据库插入,可以从上的教程开始
initComponents();
try {
ResultSet res = statement.executeQuery("SELECT * FROM banh");
ResultSetMetaData RSMD = res.getMetaData();
NumberOfColumns = RSMD.getColumnCount();
AttributeNames = new String[NumberOfColumns];
for(int i=0;i<NumberOfColumns;i++)
AttributeNames[i]=RSMD.getColumnName(i+1);
MyArray=new Object[10000][NumberOfColumns];
int R=0;
while(res.next()) {
for(int C=1; C<=NumberOfColumns;C++)
MyArray[R][C-1]=res.getObject(C);
R++;
}
res.close();
NumberOfRows=R;
Object[][] TempArray=MyArray;
MyArray=new Object[NumberOfRows][NumberOfColumns];
for(R=0;R<NumberOfRows;R++)
for(int C=0;C<NumberOfColumns;C++)
MyArray[R][C]=TempArray[R][C];
TableData.setModel(new MyTableModel());
TableData.setVisible(true);
}
catch(Exception e)
{
e.printStackTrace();
}
public void initComponents()
{
model = new DefaultTableModel (new Object [][]
{
{null},
{null},
{null},
{null}
},
new String [] {""}
) {
Class[] types = new Class [] {java.lang.Object.class};
boolean[]canEdit=new boolean[]{false};
public Class getColumnClass(int columnIndex)
{
return types [columnIndex];
}
public boolean isCellEditable(int rowIndex, int columnIndex)
{
return canEdit [columnIndex];
}
};
TableData.setModel(model);
JScrollPane ScrollPane1 = new JScrollPane(TableData);
ScrollPane1.setBounds(30,170,950,290);
Frame.add(ScrollPane1,BorderLayout.CENTER);
}