Foros del Web » Programación para mayores de 30 ;) » Java »

Ingresar y Recuperar datos de un JTABLE

Estas en el tema de Ingresar y Recuperar datos de un JTABLE en el foro de Java en Foros del Web. Hola, disculpen tengo este dilema, estoy haciendo una factura donde pueda colocar los insumos en la tabla y al presionar guardar todo se vaya a ...
  #1 (permalink)  
Antiguo 15/10/2011, 18:20
Avatar de jrevilla  
Fecha de Ingreso: septiembre-2011
Ubicación: Lima, Peru, Peru
Mensajes: 51
Antigüedad: 12 años, 6 meses
Puntos: 2
Ingresar y Recuperar datos de un JTABLE

Hola, disculpen tengo este dilema, estoy haciendo una factura donde pueda colocar los insumos en la tabla y al presionar guardar todo se vaya a una base de datos, y resulta que no se como comenzar, ya tengo mi base de datos MYSQL, y ahora me falta como hacer la factura, aqui les pongo la imagen:

[URL="http://images02.olx.com.ec/ui/8/67/62/1281336679_73696562_1-Fotos-de--Programa-de-Facturacion-o-Administracion-Windows-o-Linux-1281336679.jpg"]Click para ver la imagen[/URL]

y yo se que he hecho bien la factura en mi base de datos, por si es que me lo preguntan, esta consta de 2 tablas, Factura y Detalles de Factura
por favor si me ayudan dandome un tutorial o un ejemplo estaria muy agradecido

Última edición por jrevilla; 15/10/2011 a las 18:26
  #2 (permalink)  
Antiguo 20/10/2011, 17:23
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 20
Respuesta: Ingresar y Recuperar datos de un JTABLE

primero busca informacion sobre JDBC para que realices las transacciones a la base de datos desde JAVA

aqui puedes encontrar informacion

http://tutorialjava7.wordpress.com/2...-swing-videos/
__________________
agradecer no cuesta nada
Entre más información proporciones más fácil será ayudarte, y asi evitar adivinar el problema con el que cuentas.
  #3 (permalink)  
Antiguo 21/10/2011, 08:13
Avatar de jcesar01  
Fecha de Ingreso: abril-2010
Ubicación: Republica Dominicana
Mensajes: 7
Antigüedad: 14 años
Puntos: 2
Respuesta: Ingresar y Recuperar datos de un JTABLE

No eh revisado tu codigo, estoy un poco aragan hoy, pero aqui te van algunas ideas.

Ya, que tienes tu coneccion a la base de datos, eh de suponer que tienes algun objecto por hay instanciado de la clase Connection al cual llamare “con” de ahora en adelante (no se como lo habra nombrado el IDE en tu codigo). como sabras esta es una clase abstracta la cual se implementa con la clase DriverManager y su metodo getConnection. Bien supongo que hasta aqui estas. Ahora lo que nos haria falta serian dos clases mas para el manejo de los datos y su posterior inclusion en el JTable.

Estas clases son: La primera que es abstracta es Statement y la segunda es ResultSet tambien abstracta.

La clase Statement la implementamos con el mentodo createStatement del objeto connection, seria algo asi:

Statement st = con.createStatement();

Bien ya que tenemos nuestra clase statement ya podemos hacer nuestras consultas. Ah si, toda operacion sobre una base de datos desde su conneccion hasta su posterior manipulacion debe de hacerse dentro de bloques try...catch, ya que estas operaciones pueden o no generar resultados, asi como arrojar exepciones como datos nulos en las consultas, etc...

Ahora bien, la clase Statement posee varios metodos para manipular y consultar nuestro origen de datos, osea nuestra DB, pero los que te interesan ahora son los que modifican y extraen datos de la base de datos. Estos metodos son:

st.executeUpdate("Aquí va un query que modifique el schema de la base de datos incluyendo las comillas").

Este metodo se utiliza para modificar la base de datos, hacer: Updates, inserts, o modificar el schema mediante SQL.

El otro metodo que tenemos es para realizar consultas:
St.executeQuery(“select xxxx, xxxx, xxxx, xxxx, from xxxxx……..”) Bastante sencillo. Puedes concatenar el contenido de tu JTextField para obtener los resultados deseados.

Bien el otro objeto que debemos instanciar es el ResultSet y como es abstracto lo haremos de la siguiente manera:

ResultSet rs = st.executeQuery(“select …. from ……”). Hasta aqui ya tenemos todos los datos de nuestra consulta cargados en nuestro ResultSet solo hace falta meterlos en el JTable.
Antes que nada necesitaremos importar el siguiente paquete.
Javax.swing.table.*; en el tenemos todas las clase y métodos para el manejo de tablas. Y lo que necesitamos de el, es un modelo de tablas, pero eso ya es otra cosa, asi que usaremos el modelo por defecto instanciando la clase: DefaultTableModel serial algo asi:
DefaultTableModel modelo = new DefaultTableModel();
Luego agregaremos las columnas que sean necesarias. Si nuestra consulta arroja 3 columnas agregaremos 3 columnas a modelo:
Modelo.addColumn(“col1”);
Modelo.addColumn(“col2”);
Modelo.addColumn(“col3”);

Y porque necesitamos a modelo, simple a este le agregaremos los datos del ResultSet y luego agregaremos a modelo a nuestra JTable.
Para llenar el modelo debemos declarar un vector del tipo Object. Por ejemplo : Object [] row = new Object[3], la longitud del vector debe de ser igual a la cantidad de columnas que arrojo nuestra consulta. Luego recorremos los datos del ResultSet fila por fila, metemos cada fila recorrida dentro de nuestro vector y agregamos nuestro vector a nuestro TableModel (modelo). Repetimos este proceso hasta llegar al final de los datos del ResultSet. Como haremos un mismo procedimiento repetitivo usaremos Bucles para el recorrido del ResultSet, aquí te va el código:



While(rs.next())
{
Obejct[] row = new Object[3];

For (int I = 0;i<row.length;i++)
{
Row[I] = rs.getObject(I+1); //el primer indice en rs es 1 no cero pore so sumo 1.
}
Modelo.addRow(row); //Aqui añadimos la fila al modelo
}

Por ultimo lo que hacemos es agregar el modelo a la tabla.
JTable.setModel(modelo)

Comentando un poco: next() es un método que recorre las filas de nuestro resultset y pasa a la siguiente fila. getObject obtine el valor de una celda en la fila actual que se esta recorriendo. Existen otros métodos como getInt(), getString(), pero usamos getObject, para facilitarnos la vida un poco.
Las tablas necesitan un modelo porque una tabla no solo contiene datos numérico o strings sino que también puede contener otros objetos como Botones o CheckBox. Asi que la clase modelo es la que construye la estructura de la tabla.

Bueno espero que te sirva de algo. Me faltaron muchos detalles pero estoy en el trabajo y tengo que ponerme a trabajar.
No dudes en preguntar.

Etiquetas: factura, jform, jtable, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:16.