Capturar id do usuário logado e inserir numa tabela

Alguém tem uma sugestão de como fazer isso, vou postar o código do método que autentica o usuário

public Funcionario loginSenha(String login, String senha) throws Exception {
        Funcionario f = null;       
        Connection con = Conexao.obterCon();
        PreparedStatement psmt = con.prepareStatement("SELECT * FROM funcionario WHERE login=? AND senha=?");
        psmt.setString(1, login);
        psmt.setString(2, senha);
        ResultSet rs = psmt.executeQuery();
        while (rs.next()) {
            f = new Funcionario();  
            f.setCodigo(rs.getInt("cod_fun"));
            f.setCargo(rs.getString("cargo"));
            f.setLogin(rs.getString("login"));
            f.setSenha(rs.getString("senha"));
        }
        return f;
    }    
}
f.setCodigo(rs.getCodigo("cod_fun"));

não seria?

f.setCodigo(rs.getInt("cod_fun"));

opa é isso mesmo, corrigi

este método já não captura o id do usuário? passando o usuário e a senha.

vc quer um método para salvar?

O seu problema é na linha abaixo?


f.setCodigo(rs.getCodigo("cod_fun"));  

se for troca para


f.setCodigo(rs.getInt("cod_fun"));  

Arrumei a linha, queria usar esse id que capturei para fazer um insert numa tabela de cadastro, para depois poder puxar qual usuário cadastrou.

assim:

public Funcionario insert(Funcionario f){ Connection con = getConnection(); PreparedStatement psmt = null; psmt = con.createStatement(); String insert = "insert into cadastro values(?)"; psmt.setInt(1, f.getIdFunc()); psmt.executeUpdate(); pstm.close(); con.close(); //close others }

wsm,

Você já possui o código do usuário no objeto que provavelmente você deve setar na sessão para algum tipo de controle, na inserção que quiser salvar o código, é só recuperar o código do usuário logado acessando o método getCodigo da classe Funcionario do objeto que vai estar na sessão.

infineight, eu tentei fazer assim mas retornou como null. Eu uso o objeto para fazer o login.

como vc armazenou o código do usuário na sessão?

Só armazeno no metodo do login.

Ok, então precisa armazena-lo para futura consulta. Isto pode ser feito por sessão exemplo.

vc está usando algum framework? o que está utilizando?

Não, estou fazendo no modelo MVC.

vamos lá está usando em uma aplicação web ou desk?

Aplicação desktop.

Este link vai te ajudar: http://www.guj.com.br/java/126007-java-desktop—como-criar-sessao#812474