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

Recargar datos jtable con mysql

Estas en el tema de Recargar datos jtable con mysql en el foro de Java en Foros del Web. Hola, necesito ayuda. Tengo una JTable que se carga con mysql, y necesito que al hacer una update en la BD la jtable se actualice ...
  #1 (permalink)  
Antiguo 05/08/2015, 09:40
 
Fecha de Ingreso: agosto-2015
Mensajes: 6
Antigüedad: 8 años, 8 meses
Puntos: 0
Recargar datos jtable con mysql

Hola, necesito ayuda. Tengo una JTable que se carga con mysql, y necesito que al hacer una update en la BD la jtable se actualice sola.

La unica forma que logre hacerlo es cada X segundos, borro todas las filas de la tabla y la vuelvo a cargar los datos. Al principio todo iba bien, pero la tabla ya tiene varias filas y se nota mucho cuando se borran las filas y vuelve a cargar, lo cual queda muy feo.

Ademas, cada vez que recarga, el scroll vuelve al principio de la tabla, y es bastante molesto. Esto, mas o menos, lo pude solucionar aunque no quedo del todo bien.

Alguien me puede dar una mano? Gracias.
  #2 (permalink)  
Antiguo 08/08/2015, 15:06
Avatar de JONATHANBARBOSA2015  
Fecha de Ingreso: agosto-2015
Ubicación: COLOMBIA
Mensajes: 20
Antigüedad: 8 años, 8 meses
Puntos: 1
Respuesta: Recargar datos jtable con mysql

Amigo necesita que la tabla se actualice sola?
  #3 (permalink)  
Antiguo 10/08/2015, 07:56
 
Fecha de Ingreso: julio-2015
Ubicación: MEXICO
Mensajes: 46
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Recargar datos jtable con mysql

Cuando cargas la tabla la cargas con algun metodo??
__________________
VENIMOS A APRENDER
  #4 (permalink)  
Antiguo 10/08/2015, 11:35
Avatar de Tipdar  
Fecha de Ingreso: octubre-2005
Ubicación: Aquí y allá.
Mensajes: 323
Antigüedad: 18 años, 6 meses
Puntos: 7
Respuesta: Recargar datos jtable con mysql

Hola tururuh!!!
Hace mucho rato que no trabajo con Swing, pero sí trabajo mucho con SWT, y ahí a las tablas les defines una propiedad VIRTUAL en el constructor, lo cual te carga en memoria solo lo que estás viendo de la tabla, me imagino que para evitar esos flickers. No recuerdo si en Swing existe algo como eso, debe existir, te lo escribo solo para darte un norte y que indagues con respecto a eso y luego nos comentes acá en el foro.
No sé si existirá algún otro modo de decirle a tu aplicación desde la base de datos que se ha actualizado que actualizarla cada X segundos. Es posible que sí, pero me parece que esa es la solución, actualizar la tabla mediante un hilo cada X tiempo.
Lo de que regresa al principio lo puedes solucionar saltando a la posición que desees de tu tabla en el momento en que invoques tu thread de actualización.
Lamento no poder decir mucho más que eso ahora mismo.
__________________
El último TipdaR
  #5 (permalink)  
Antiguo 10/08/2015, 15:50
Avatar de JONATHANBARBOSA2015  
Fecha de Ingreso: agosto-2015
Ubicación: COLOMBIA
Mensajes: 20
Antigüedad: 8 años, 8 meses
Puntos: 1
Respuesta: Recargar datos jtable con mysql

Código Java:
Ver original
  1. public void Op2_Cargar_Datos(String valor) {
  2.         String mostrar = "SELECT * FROM ingreso_producto WHERE CONCAT(CODIGO,NOMBRE,PROVEEDOR,PRECIO,STOCK,FECHA,TELEFONO_PROVEEDOR) LIKE '%" + valor + "%'";
  3.         String[] titulos = {"Codigo", "Nombre", "Proveedor", "Precio", "Stock", "Fecha", "Tel_Proveedor"};
  4.         String[] Datos = new String[7];
  5.         model = new DefaultTableModel(null, titulos);
  6.  
  7.         try {
  8.             Statement st = conexion.createStatement();
  9.             ResultSet rs = st.executeQuery(mostrar);
  10.             while (rs.next()) {
  11.  
  12.                 Datos[0] = rs.getString("CODIGO");
  13.                 Datos[1] = rs.getString("NOMBRE");
  14.                 Datos[2] = rs.getString("PROVEEDOR");
  15.                 Datos[3] = rs.getString("PRECIO");
  16.                 Datos[4] = rs.getString("STOCK");
  17.                 Datos[5] = rs.getString("FECHA");
  18.                 Datos[6] = rs.getString("TELEFONO_PROVEEDOR");
  19.  
  20.                 model.addRow(Datos);
  21.  
  22.             }
  23.             JT_TablaProductos.setModel(model);
  24.         } catch (SQLException ex) {
  25.             Logger.getLogger(MENU_INGRESO_CLIENTE.class.getName()).log(Level.SEVERE, null, ex);
  26.             JOptionP.ContOperador();
  27.         }
  28.  
  29.     }

en la parte principal adonde dice initComponents(); en la parte de abajo llamas al metodo...

Etiquetas: jtable, mysql, sql
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 09:27.