este es el codigo ded mi boton donde traigo los datos de la base de datos a un jtable..
Código:
aki de otra forma cuando pongo la direccion de la base de datos manualmente ya no sale error al ejecutar la aplicacion desde el jar.private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
Class.forName("org.h2.Driver");
cn=DriverManager.getConnection("jdbc:h2:\\"+System.getProperty("user.dir") +"\\DBEjemplo",
"sa","123");
PreparedStatement ps=cn.prepareStatement("select*from usuarios");
ResultSet rs=ps.executeQuery();
ResultSetMetaData rsm=ps.getMetaData();
ArrayList<Object[]> datos=new ArrayList<Object[]>();
while (rs.next()) {
Object[] filas=new Object[rsm.getColumnCount()];
for (int i = 0; i <filas.length; i++) {
filas[i]=rs.getObject(i+1);
}
datos.add(filas);
}
dtm=(DefaultTableModel)this.jTable1.getModel();
cleanModel();
for (int i = 0; i < datos.size(); i++) {
dtm.addRow(datos.get(i));
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
Código:
nota: la base de datos la cree en la carpeta de mi aplicacion. espero que puedan ayudarme y espero haberme explicado. gracias de antemanoprivate void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
Class.forName("org.h2.Driver");
cn=DriverManager.getConnection("jdbc:h2:\Documents and Settings\MAQUINA-03\Mis documentos\NetBeansProjects\ejemplopath\DBEjemplo",
"sa","123");
PreparedStatement ps=cn.prepareStatement("select*from usuarios");
ResultSet rs=ps.executeQuery();
ResultSetMetaData rsm=ps.getMetaData();
ArrayList<Object[]> datos=new ArrayList<Object[]>();
while (rs.next()) {
Object[] filas=new Object[rsm.getColumnCount()];
for (int i = 0; i <filas.length; i++) {
filas[i]=rs.getObject(i+1);
}
datos.add(filas);
}
dtm=(DefaultTableModel)this.jTable1.getModel();
cleanModel();
for (int i = 0; i < datos.size(); i++) {
dtm.addRow(datos.get(i));
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
}


