Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Función que sea capaz de devolver dos tipos diferentes de retorno

Hola a todos,

Primero de todo, gracias por leer este POST, os comento, estoy empezando a pasar todos mis programas realizados en VB a Java (estoy aprendiendo a medida que me encuentro con los problemas), dado que los quiero poder traspasar a diferentes Sistemas Operativos y no quiero depender de Microsoft y de paso actualizar con nuevas mejores mis programas, el problema que me encuentro es el siguiente:

Estoy haciendome una clase para conectarme a MySQL, en esta clase tengo dos funciones una que me devuelve un RecordSet (consultas tipo SELECT) y otra que me devuelve true o false segun el resultado de una query (consultas tipo INSERT / UPDATE..). El problema es que ahora quiero realizar una funcion que segun el tipo de Sentencia SQL, se conecte a las funciones anteriores y me devuelva o bien un Recordset o bien un Boolean, ¿Como puedo gestionar esto?, ¿Que tipo de dato le tengo que poner a esta nueva funcion?

Saludos y Gracias anticipadas

febrero 14, 2012 | Unregistered CommenterCarlosBrown

Sin haber visto el código que estás usando, creo que deberías replantearte el diseño del acceso a la base de datos.
Los métodos en Java solamente pueden devolver un tipo, sea estándar del JDK, sea uno creado por ti mismo.

febrero 14, 2012 | Registered Commenterchoces

@choces, primero de todo gracias por contestarme.

Me has dado la idea/solución con lo del tipo creado por mi, creare un tipo que contenga dos campos uno que sea boolean y otro RecordSet de tal forma que la funcion rellenará el que pertoque y el otro lo dejara a null. Es un poco más lioso de lo que tenia pensado pero me valdrá.

De nuevo muchas gracias

febrero 14, 2012 | Unregistered CommenterCarlosBrown

Buenas, no veo muy claro lo que quieres hacer, pero si tu función devuelve Object, puedes meterle lo que quieras. Luego podrías usar instanceof para ver qué es realmente lo que te han devuelto.

febrero 15, 2012 | Registered Commenterjvel