Ver Mensaje Individual
  #5 (permalink)  
Antiguo 10/03/2013, 20:34
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 1 mes
Puntos: 6
Respuesta: Paginando Jtable

alguien me puede ayudar??? me falta poco, tengo una clase que la uso como singleton y acá está el código:

package singletonbd.dominio.CyF;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import singletonBD.broker.especificos.BrokerPersona;
import singletonBD.dominio.clases.Persona;
import singletonbd.dominio.clases.Paginacion;
import singletonbd.dominio.excepciones.ExcepcionPersonaRe petida;
import singletonbd.dominio.util.IControlador;
public class ControladorPersona implements IControlador<Persona,LinkedHashMap<Integer,Persona >>
{
private static ControladorPersona objgestor=null;
private LinkedHashMap<Integer,Persona> col=null;
private LinkedList<Persona>colaux=new LinkedList();
private Paginacion objpag=null;
private ControladorPersona()
{
col=new LinkedHashMap();
col=BrokerPersona.getInstance().obtenerTabla();
Persona.autoID=BrokerPersona.getInstance().obtener MAX();
objpag=new Paginacion(1, col.size(),2);
}
public static ControladorPersona getInstance()
{
if(objgestor==null)
{
objgestor= new ControladorPersona();
}
return objgestor;
}
@Override
public void guardar(Persona obj) throws Exception
{
if(col.containsValue(obj))
throw new ExcepcionPersonaRepetida("La Persona ya Existe");
else
{
col.put(obj.getNumero(), obj);
BrokerPersona.getInstance().guardame(obj);
Persona.incrementarID();
}
}
@Override
public void modificar(Persona obj) throws Exception
{
Persona objpersona=col.get(obj.getNumero());
if(!objpersona.getCI().equals(obj.getCI()))
{
if(col.containsValue(obj))
{
throw new ExcepcionPersonaRepetida("La Persona ya Existe");
}
objpersona.setCI(obj.getCI());
}
objpersona.setNombre(obj.getNombre());
objpersona.setApellido(obj.getApellido());
objpersona.setFechanac(obj.getFechanac());
objpersona.setDirNombre(obj.getDirNombre());
objpersona.setDirNumero(obj.getDirNumero());
BrokerPersona.getInstance().modificame(objpersona) ;
}
@Override
public void eliminar() throws Exception
{
for (Persona persona : colaux)
{
if(col.containsKey(persona.getNumero()))
{
col.remove(persona.getNumero());
}
}
this.eliminarDyC();
}
public void eliminarDyC()
{
String meMuero = null;
for(Persona objp : colaux)
{
if(!colaux.getLast().equals(objp))
{
meMuero+=objp.getNumero()+",";
}
else
{
meMuero+=objp.getNumero();
}
}
colaux.clear();
BrokerPersona.getInstance().eliminame(meMuero);
}
@Override
public LinkedHashMap<Integer, Persona> devolverDatos()
{
return (LinkedHashMap)col.clone();
}
private boolean buscadorDeObjetos(String campo, String texto)
{
return campo.startsWith(texto.toUpperCase()) || campo.startsWith(texto.toLowerCase());
}
public LinkedHashMap<Integer, Persona> devolverDatosBuscados(String texto)
{
LinkedHashMap<Integer, Persona>colaux=new LinkedHashMap();
for(Persona objp : col.values())
{
if(this.buscadorDeObjetos(objp.getCI(), texto) || this.buscadorDeObjetos(objp.getNombre(), texto) || this.buscadorDeObjetos(objp.getApellido(), texto))
{
colaux.put(objp.getNumero(), objp);
}
}
return colaux;
}
}

sólo me falta el o los listados para mostrar mis datos paginados. si me ayudan se los agradezco.