Hola aqui un ejemplo simple de como utilizar:
//yo cree una funcion donde indice es el getSelectedIndex() de un jcombox donde muestro el tipo de busqueda, luego tengo el txtbuscar donde voy escribiendo, la funcion buscarRegistro esta dentro del evento KeyReleased de txtbuscar:
public void buscarRegistro(int indice) {
if (acDAO != null) {
String strid = " and trim(cast(CCOD_ACTIVIDAD as unsigned)) LIKE '" + txtbuscar.getText().trim() + "%' ";
String strnom = " and CNOM_ACTIVIDAD LIKE '" + txtbuscar.getText().trim() + "%' ";
switch (indice) {
case 0:
objTable1.setModel(acDAO.getActividadEnTabla(ccod_empresa, strid));
break;
case 1:
objTable1.setModel(acDAO.getActividadEnTabla(ccod_empresa, strnom));
break;
}
}
}
//getActividadEnTabla es una funcion del tipo javax.swing.table.DefaultTableModel
public javax.swing.table.DefaultTableModel getActividadEnTabla(String idemp,String argument) {
return new DefaultTableModel(
getArregloActividades(idemp,argument),
new String [] {
"", "ID Actividad", "Descripcion", "Nivel", "Estado"
})
{
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.Boolean.class
};
boolean[] canEdit = new boolean [] {
false, false, false, false, false
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
};
}
//getArregloActividades es la funcion que me devuelve el arreglo formado de la base de datos
public Object[][] getArregloActividades(String idemp,String argument){
List<Actividad> l = getActividades(idemp,argument);
Object[][] ac = new Object[l.size()][5];
int i = 0;
for (Actividad c : l) {
ac[i][0] = c.getCodEmpresa();
ac[i][1] = c.getCod();
ac[i][2] = c.getNom();
ac[i][3] = c.getNivel();
ac[i][4] = c.getEstado();
i++;
}
return ac;
}
//getActividades es arreglo
public List<Actividad> getActividades(String idemp,String argument) {
List<Actividad> lst = new ArrayList<Actividad>();
String sql = "select * from hcho_mempresa_actividad " +
" where CCOD_EMPRESA like '"+idemp+"' "+argument+" order by cast(CCOD_ACTIVIDAD as unsigned)";
try {
select(sql);
while (rs.next())
lst.add(recordSet(rs));
} catch (Exception e) {
e.printStackTrace();
setMensaje(e.getMessage());
}
showMensaje();
return lst;
}
//Actividad es la clase que contiene los get y set para poder recibir los datos de la bd
Espero que puedas obtener el resultado que querias con esta busqueda.