По какой-то причине данные, созданные с помощью java, не будут преобразованы в таблицу при использовании JTable. Может кто-нибудь объяснить мне, почему? Это потому, что мои столбцы или счетчики строк отключены? Мой код и журнал ошибок нижеJTable Не работает
import java.awt.BorderLayout;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;`
@SuppressWarnings("serial")
public class tab extends JFrame
{
public tab()
{
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection dbConn = DriverManager.getConnection("jdbc:mysql://www.papademas.net/Inventory?"
+ "user=root&password=jamesp");
Statement st = dbConn.createStatement();
Vector<Vector<Object>> data = new Vector<Vector<Object>>();
Vector<String> column = new Vector<String>();
try {
st = dbConn.createStatement();
ResultSet res = st.executeQuery("SELECT * FROM JReimTicketer");
ResultSetMetaData metaData = res.getMetaData();
int columns = metaData.getColumnCount();
//get column names from table!
String cols = "";
for (int i = 1; i <= columns ; i++) {
cols = metaData.getColumnName(i);
column.add(cols);
}
//get row data from table!
while (res.next()) {
Vector<Object> row = new Vector<Object>(columns);
for (int i = 1; i <= columns; i++) {
row.addElement(res.getObject(i));
}
data.addElement(row);
}
} catch (SQLException e) {
e.printStackTrace();
}
JTable table = new JTable(data,column);
JScrollPane scrollPane = new JScrollPane(table);
getContentPane().add(scrollPane);
JPanel buttonPanel = new JPanel();
getContentPane().add(buttonPanel, BorderLayout.SOUTH);
}
catch (InstantiationException e) {
System.err.println("Error in Instantiation!");
}
catch (ClassNotFoundException e) {
System.err.println("Class not found!");
}
catch (IllegalAccessException e) {
System.err.println("Access denied!");
}
catch (SQLException e) {
System.err.println("SQL Error! " + e.getMessage());
}
}
public static void main(String[] args)
{
tab frame = new tab();
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'inventory.jreimticketer' doesn't exist
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:389)
at com.mysql.jdbc.Util.getInstance(Util.java:372)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:980)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3835)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3771)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2435)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2582)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2531)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2489)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1446)
at tab.<init>(tab.java:33)
at tab.main(tab.java:84)
Как показывает ошибка, вы проверили, что фактически существует таблица 'inventory.jreimticketer'? – npinti
Спасибо! он должен был быть 'jdbc: mysql: //www.papademas.net/tickets?' – pHorseSpec