Método Java + SQL[RESOLVIDO]

1 resposta
ricardocomp

Olá pessoal,
eu estou construindo um método Java
que passa como parâmetro o login e retorna
o idUsuario daquele login:

public int getId(String login) throws LAFQADaoException {
            ResultSet rs = null;
            try {
                stmt = this.conn.createStatement();
                int idUsuario = -1;
                rs = stmt.executeQuery("SELECT LAST_INSERT_ID() FROM usuario_sistema WHERE login = '" + login + "'");

                if (rs.next()) {
                    idUsuario = rs.getInt(1);
                }
                else {
                    throw new LAFQADaoException("Erro ao pegar a chave primaria");
                }

                rs.close();
                stmt.close();
                System.out.println("Key returned from " +
                                   "'SELECT LAST_INSERT_ID()': " +
                                   idUsuario);
                return idUsuario;
            } 
            catch (SQLException ex) {
                Logger.getLogger(UsuarioSistemaDao.class.getName()).log(Level.SEVERE, null, ex);                
            }
            
    }

Está aparecendo a seguinte mensagem:

init:
deps-jar:
Compiling 5 source files to C:\Documents and Settings\Ricardo\Meus documentos\NetBeansProjects\TesteCadastro\build\classes
C:\Documents and Settings\Ricardo\Meus documentos\NetBeansProjects\TesteCadastro\src\dao\UsuarioSistemaDao.java:97: missing return statement
    }
1 error
FALHA NA CONSTRUÇÃO (tempo total: 1 segundo)

Alguém sabe o que o posso ter feito de errado?
Será que alguém poderia me dar uma ajuda?

[]'s.

1 Resposta

B

O problema está no catch. Esse try pode gerar uma SLQException antes de return ser executado.

Uma forma de resolver é declarar o idUsuário e return fora do try.

Criado 3 de outubro de 2009
Ultima resposta 3 de out. de 2009
Respostas 1
Participantes 2