Thread View: es.comp.lenguajes.java
2 messages
2 total messages
Started by luisfleon
Thu, 21 Feb 2008 20:14
Filtrar Consulta en jTable basado en ResultSet
Author: luisfleon
Date: Thu, 21 Feb 2008 20:14
Date: Thu, 21 Feb 2008 20:14
69 lines
3383 bytes
3383 bytes
Saludos amigos, quiero hacerles una consulta para ver que me sugieren.
Estoy haciendo una ventana de consulta. Un JTable y JTextField. De
manera que al ir escribiendo en el JTextField, se deberia ir filtrando
la informacion consultada, actualizando el JTable en base a un
ResultSet. Cuando hago la prueba con una tabla de 12 registros
funciona a la perfeccion, el detalle es que cuando la prueba con una
tabla de 40 mil registros, se pone lentisimo. Me gustaria tener su
recomendaciones sobre lo que podria hacer al respecto ... Es correcto
lo que estoy haciendo ? Como podria mejorarlo ? .. Agradezco mucho sus
comentarios. Que utilizo es el siguiente:
// *** JDialgo JBuscar ***
public class JBuscar extends javax.swing.JDialog implements
TableModelListener {
private Connection conexion;
private ResultSet consulta;
private ResultSetTableModel tableModel;
// *** Constructor ***
public JBuscar() {
Class.forName("com.ibm.as400.access.AS400JDBCDrive r");
conexion=DriverManager.getConnection(url,usuarios, clave);
Statement sentencia=CONEXION.createStatement(ResultSet.TYPE_
SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE,
ResultSet.HOLD_CURSORS_OVER_COMMIT);
consulta=sentencia.executeQuery("SELECT CODIGOPAIS, DESCRIPCIONPAIS
FROM PAIS");
tableModel = new ResultSetTableModel(consulta);
initComponents();
}
// *** initComponents ***
private void initComponents() {
...
jTextField1 = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new JTable(tableModel);
...
}
// *** Evento CaretUpdate del jTextField ***
private void jTextField1CaretUpdate(javax.swing.event.CaretEven t evt)
{
if (!this.jTextField1.getText().trim().equals("")) {
consulta = FrmPrincipal.getConexionPrincipal().Consulta("SELE CT
CODIGOPAIS, DESCRIPCIONPAIS FROM PAIS WHERE CODIGOPAIS + " LIKE '%" +
this.jTextField1.getText().trim().toUpperCase() + "%'");
} else {
consulta = FrmPrincipal.getConexionPrincipal().Consulta("SELE CT
CODIGOPAIS, DESCRIPCIONPAIS FROM PAIS");
}
tableModel = new ResultSetTableModel(consulta);
this.jTable1.setModel(tableModel);
}
}
//**************************
Re: Filtrar Consulta en jTable basado en ResultSet
Author: Eduardo Yรกรฑez Parareda
Date: Fri, 22 Feb 2008 10:57
Date: Fri, 22 Feb 2008 10:57
1 lines
1016 bytes
1016 bytes
Ya te he constestado en el primer post que has puesto
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads