Caldera Recuperadora de químicos en celulosa tipos y funcionamiento
JTable Java gestionar datos tablas
1. UNIVERSIDAD POLITECNICA AMAZONICA
INGENIERIA DE SISTEMAS Y TELEMATICA
CICLO : V.
CURSO : DESARROLLO DE SOFTWARE I.
DOCENTE : MARCO AURELIO PORRO CHULLI.
INTEGRANTES:
PATRICIA REYNA REYANAGA.
LUZ VERONICA RUIZ PLACENCIA.
2. JTable es un componente swing java que nos permite mostrar datos
en una tabla de una base de datos, sin embargo a diferencia de
otros componentes similares de otros lenguajes de programación
(Delphi por ejemplo), java no nos permite gestionar directamente los
datos.
Es una clase que me permite organizar una determinada información
en tabla, esta difiere de una base de datos normal porque al utilizar
Jtable tu puedes visualizar esta tabla, brindándole a el usuario
organización de información, oportunidades de editar y cambiar el
tamaño de las columna entre otras.
3. En principio se creo la clase Jtable para constituir un interfaz
ligado a bases de datos a través de "Java Database
Connectivity" (JDBC), y así evita la complejidad que existía
par el manejo de datos, dando así al programador mucha
mas facilidad a la hora de trabajar con este tipo de
información.
Jtable le da al programador muchas facilidades, pues este
posee varias características que permiten hacer desde
tablas con información compleja y muy estructurada hasta
tablas con información sencilla y "básica".
4. La clase Jtable controla como se presentan los datos, siendo
el TableModel quien controla los datos sí mismos. para crear
una Jtable habrá pues que crear un TableModel antes,
normalmente. TableModel lo que hace es predeterminar
ciertas características para el Jtable es decir que tu puedes
poner ciertos parámetros dentro de un TableModel y así no
tener que determinarlos siempre. TableModel es un programa
que guarda los datos de la tabla para si mismo, es decir,
puede tener la información de la tabla pero estos datos son
los visualizados por el computador, es decir, para visualizar
una tabla el TABLEMODEL puede tener la información pero sin
el Jtable no se puede visualizar para el usuario.
5. Jtable tiene una característica muy llamativa, este permite que el
programador pueda decidir que se edita y que no, sin embargo si
el programador dentro de su programa o de su TABLEMODEL no
tiene determinado este aspecto, Jtable automáticamente hace
editable las celdas dentro de la tabla. Existen varias maneras de
hacer editable o no las celdas dentro de la tabla, para ver estos
comandos tu te puedes dirigir a Dentro de las celdas
encontradas en una tabla se puede permitir al usuario editar o no
editar según lo desee el programador, esta propiedad se puede
arreglar desde el table model o directamente y/o desde el
programa. Jtable tiene la propiedad de dejar editable las celdas
si no encuentra nada que hable de esto.
6. Jtable te brinda muchas facilidades para poder crear una table, y
así mismo de llenarla con la información que desees ( números,
letras etc...) por lo que sencillamente dentro de una tabla esta
automáticamente a través de la información debidamente
separada - por ""(comillas) o por , (coma) - es capaz de
contabilizarlas y al mismo tiempo llenarla con la información que
se le dio; es decir el programador solo se debe encargar de
poner los títulos de las tablas y así mismo de escribir la
información en el mismo orden en que desee que salga de
acuerdo con los títulos y Jtable se encargara automáticamente
de colocar la información donde se le indico.
7. Para un CellRendered con un TableModel sencillo, tal vez
identificar clases pueda ser algo mas complejo que no pueda
hacer, pero para uno un poco mas avanzado, esto seria muy
fácil, y para esto cito el caso de un CHECK BOX(casilal de
verificación) el cual es un componente grafico generado por
Jtable después de que identifica una información tipo boolean,
dándole así la apariencia de un cuadro rellenable, un check box
no es mas que eso, una opción - que puede ser editable o no -
que simplemente se chulea para indicar un si o un no ( si esta
chuleado significa verdadero, sino lo esta indica falso), la cual el
usuario solo puede colocar mediante un TableModel que sepa
identificar clases.
8. Llenar un JTable con datos de una base de datos MySql
Mi tabla se llama usuario y tengo 3 campos, nombre, apellido_1, apellido_2.
EXCELL
JAVA
10. LLENAR UN JTABLE CON UNA BASE DE DATOS
public static DefaultListModel obtenerCodigos() {
DefaultListModel modelo = new DefaultListModel();
try {
DefaultListModel defaultListModel = new DefaultListModel();
int contador=1;
String codigo="";
ResultSet resultados = conexion.ejecutarConsulta("SELECT * FROM producto");
while(resultados.next()){
codigo= resultados.getString(1);
defaultListModel.addElement(contador+". "+codigo);
contador++;
}
conexion.cerrarConsulta();
return defaultListModel;
} catch (SQLException ex) {
return modelo;
}
}
this.listMarcadores.setModel(obtenerCodigos());
11. EJEMPLOS
CREATE TABLE persona (
p_id int(11) NOT NULL auto_increment,
p_nombre varchar(32) default 'Nombre',
p_apellido varchar(32) default 'Apellido',
p_edad int(2) default '18',
PRIMARY KEY (p_id)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=12 ;
INSERT INTO persona VALUES (1, 'Paca', 'Garte', 23);
INSERT INTO persona VALUES (2, 'Ana Lisa', 'Melchoto', 12);
INSERT INTO persona VALUES (3, 'Rosa', 'Melpito', 43);
INSERT INTO persona VALUES (4, 'Monica', 'Galindo', 63);
INSERT INTO persona VALUES (5, 'Lali', 'Cuadora', 21);
INSERT INTO persona VALUES (6, 'Mary', 'Quita', 19);
INSERT INTO persona VALUES (7, 'Flor D.', 'Turra', 26);
INSERT INTO persona VALUES (8, 'ana', 'Tomia', 18);
INSERT INTO persona VALUES (9, 'Evelin', 'Munda', 35);
INSERT INTO persona VALUES (10, 'Roque', 'Joso', 27);
INSERT INTO persona VALUES (11, 'German', 'Teca', 41);
12. public void mostrarDatosUsandoLogica() {
String titulos[] = { "Codigo", "Nombre", "Edad", "Profesión","Telefono"
};
String información[][] = obtieneMariz();// obtenemos la informacion de
la BD
mitabla1 = new JTable(información, titulos);
mitabla1.setEnabled(false);
mitabla1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
mibarra1.setViewportView(mitabla1);
}
private String[][] obtieneMariz() {
Código
13. PersonaDao miPersonaDao = new PersonaDao();
/**
* llamamos al metodo que retorna la info de la BD y la almacena en la
* lista
*/
ArrayList< PersonaVo > miLista = miPersonaDao.buscarUsuariosConMatriz();
/**
* como sabemos que son 5 campos, definimos ese valor por defecto para
* las columnas las filas dependen de los registros retornados
*/
String informacion[][] = new String[miLista.size()][5];
for (int x = 0; x < informacion.length; x++) {
informacion[x][0] = miLista.get(x).getIdPersona() + "";
informacion[x][1] = miLista.get(x).getNombrePersona() + "";
informacion[x][2] = miLista.get(x).getProfesionPersona() + "";
informacion[x][3] = miLista.get(x).getEdadPersona() + "";
informacion[x][4] = miLista.get(x).getTelefonoPersona() + "";
}
return informacion;
}
14. private void mostrarDatosConTableModel() {
DefaultTableModel model;
model = new DefaultTableModel();// definimos el objeto tableModel
miTabla2 = new JTable();// creamos la instancia de la tabla
miTabla2.setModel(model);
model.addColumn("Nº Documento");
model.addColumn("Nombre");
model.addColumn("Edad");
model.addColumn("Profesión");
model.addColumn("Telefono")
miTabla2.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
miTabla2.getTableHeader().setReorderingAllowed(false);
PersonaDao miPersonaDao2 = new PersonaDao();
/**
* enviamos el objeto TableModel, como mandamos el objeto podemos
* manipularlo desde el metodo
*/
miPersonaDao2.buscarUsuariosConTableModel(model);
miBarra2.setViewportView(miTabla2);
}