Java - Excepciones

 
Vista:

Excepciones

Publicado por jose luis cetina (113 intervenciones) el 02/04/2007 07:48:15
Hola tengo una pequeña duda.
Si tengo un bloque try...catch y dentro de este bloque dos instrucciones algo asi

try
{
insertar nuevo alumno en tabla 1.......
insertar nuevo alumno en tabla 2.......
}
catch(SQLException e)
{
}

el problema que tengo es que por ejemplo en el codigo que hace que se inserte un nuevo alumno en tabla 1 si ocurre un error, no se que pasa pero si se realiza la segunda instruccion que dice insertar nuevo alumno en tabla 2.

No deberia de que si hubo un error en la primera instruccion ignore el resto del codigo que esta dentro del bloque try
y muestre el error que esta dentro del catch?
que sugerencia me pueden dar por favor.

Es que me el error lo genera la primera instruccion pero la segunda instruccion se realiza.
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:Excepciones

Publicado por Enrique (32 intervenciones) el 02/04/2007 15:53:52
El bloque try captura las excepciones que se produzcan y las lanza en el bloque catch, precisamente para que el programa no deje de funcionar. Por eso es que se ejecuta la siguiente instruccion, aún cuando en la anterior línea ocurrió una excepción.
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
sin imagen de perfil

RE:Excepciones

Publicado por camus (240 intervenciones) el 02/04/2007 16:05:31
Cuando tienes un bloque try -catch imagina que tienes 100 lineas de codigo en el bloque try y sucede alguna exception en la linea 50 entonces en ese momento el programa se brinca sin seguir tomando en cuenta las otras 50 lineas restantes de código (por decir asi para explicar un poco mejor) al código catch. Ahora bien si estas haciendo accesos a bases de datos debes colocar tambien finally para cerrar las conexiones a bases de datos.

saludos
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:Excepciones

Publicado por Gonzalo (180 intervenciones) el 02/04/2007 16:06:05
¿Estás seguro de que el error lo da la primera instrucción? ¿Podrías poner el código para que lo veamos?

Y sí:

try {
····llamadaUno();
····llamadaDos();
} catch (Exception e) {
····//hacemos algo con e.
}

Si llamadaUno() lanza una excepción, es como supones, llamadaDos() no se ejecuta. Pero de nuevo te repito que pongas el código para verlo. Ah, y ya que estás, en el bloque catch pon un e.printStackTrace() y copia aquí el principio de la traza también.
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