Java - clases genericas en java

 
Vista:

clases genericas en java

Publicado por s0ck37 (4 intervenciones) el 11/02/2005 21:15:43
Hola:

Estoy desarrollando una aplicación con swing y tengo el siguiente problema:
La aplicación utilizara una base de datos mysql. El usuario en la interfaz (que será un editor de diagramas) manejara unos elementos con unos atributos concretos. Me creo unas clases para dar soporte a estos elementos y una tabla en la base de datos para cada tipo. El problema viene porque el usuario debe poder definir nuevos tipos de elementos. De estos elementos no se conoce en tiempo de compilación ni el número de atributos ni los tipos de estos. A la hora de almacenarlos en la base de datos no hay problema porque en tiempo de ejecución puedo crear nuevas tablas. Pero no se como crear las clases java para dar soporte a este tipo de objetos.
Alguien sabe si existe alguna forma de hacer esto? o algún patrón de diseño?

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:clases genericas en java

Publicado por chuidiang (532 intervenciones) el 11/02/2005 23:00:03
No sé si he entendido bien el problema, pero ahí va una idea a ver si te vale.

Puedes usar Hashtable. La clave para cada elemento del hashtable puede ser un String con el nombre del atributo. El valor será un Double, String, Integer, Boolean, Date, etc, etc (los que tu definas).

Por ejemplo, si el usuario dice que quiere una estructura de datos con una cadena de caracteres que es el nombre de una persona y un entero para la edad, tu codigo crea un Hashtable con una clave "nombre" y dentro un String y otra clave "edad" con un Integer dentro.

Si necesitas reconstruir el hashtable en otro momento, siempre puedes obtener las claves y los tipos de los datos con valor.getClass().getName() y guardar ambas cosas en algún sitio.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:clases genericas en java

Publicado por Wilfredo Vargas Almendras (314 intervenciones) el 12/02/2005 14:14:50
La idea es la siguiente: agarras los datos como cadenas, y en una clase que tu definas, puedes validar y ver si este dato es un int, float, cadena, etc. y esta te devuelva el tipo del dato que leiste. En todo caso si tienes estructuras mas complejar puedes utilizar la misma estrategia para objetos, agrando todo como un Object y utilizando los metodos como getClassName() o instanceof y otras formas..
Espero te sirva la idea

SALUDOS Wilfredo Vargas Almendras
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar