Ler valor da ultima linha de uma tabela msyql

Boa noite galera,
Estou desenvolvendo uma aplicação de estoque em java, bem simples.
E criei um metodo que é responsavel em ler o ultimo valor de uma coluna CODIGO, porem
me retorna um valor que não é o ultimo da coluna. segue o codigo:

public int gerarCodigoNovoProd(){    
//      atributo com sql de seleção
String sql = "select CODIGO from baseEstoque.PRODUTO";
    
//      atributo que ira armazenar o ULTIMO VALOR da sequencia de produto
int ultimo = 0;
//      atriuto que ira armazenar o VALOR ATUAL da sequencia de produto
int novo = 0;
    
try {            
conexao = ConexaoDB.getconection();
stm = conexao.prepareStatement(sql);
rs = stm.executeQuery();
        
while(rs.next()){
//              capturando o valor da primeira coluna da tabela baseEstoque.produto e atribuindo ao         
atributo ultimo
ultimo = rs.getInt(1);
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Erro ao ler sequencia de codigo do produto\n" + ex);
 } finally{
        
////          fechando a conexao com o banco de dados
//            ConexaoDB.fecharConexao(conexao, stm, rs);
    }

a intenção é pegar o ultimo valor da coluna CODIGO da tabela PRODUTO
e colocar esse valor em um JTexField.

faz um rs.last(); primeiro e tenta

Fazer o rs.last ou correr todo o result set como ele está a fazer vão dar o mesmo resultado e nenhum deles será a maneira elegante (ou sequer irá funcionar sempre).

Tu queres o último valor ou o maior valor? Se queres o último tens de ter algum critério de ordenação, para que seja o último segundo determinada ordem. Se queres o maior, há funções em SQL que te dão isso de forma direta.

Axo que era alguma coisa na minha tabela… eu acabei de fazer um lançamento tabela, atraves do meu sistema, e ao executar o metodo, ele conseguiu pegar o ultimo valor.
fiz com esse codigo q postei pra vcs. vai intender!!!

Leste o que eu escrevi? Por funcionar agora não quer dizer que vá funcionar sempre. Além dessa maneira ser extremamente ineficiente, não tens garantia de ordenação já que não usas nenhum ORDER BY.

Devo usar uma ordenção:?? como??

Deves aprender SQL. Para este caso, em vez de ordenar, é melhor achar o máximo.