Consulta em banco

Bom dia a todos

Estou com o seguinte problema estou executando uma consulta no banco que me retorna o maior valor de nr_obra estou usando mais ou menos o codigo abaixo onde passo a sql e executo ela.
Mas está me retornando null.
Alguem pode me ajudar a localizar o problema ou tem alguma forma melhor de fazer isso?

String sqlStatement= “SELECT MAX(nr_obra)as codigo FROM obra”;
con = DB.getInstance().getConnection();
stmt = con.createStatement();
stmt = con.prepareStatement(sqlStatement.toString());
rs = stmt.executeQuery(sqlStatement);

ResultSet rs = mapperSelect.executeSqlObraSelect(sqlStatement);
try {
rs.next();
String codigo = rs.getString(“codigo”);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

Desde já agradeço

atenciosamente

tanta algo assim:

[code]Connection con = DB.getInstance().getConnection();
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = null;

try {
sql = “SELECT MAX(nr_obra)as codigo FROM obra”;

  pstmt = con.prepareStatement(sql);
		
  rs = pstmt.executeQuery();
		
  if (rs.next()) {
    String codigo = rs.getString("codigo"); 
  }

}catch (SQLException e) {
Util.closeConnection(con);
return;
}
Util.closeConnection(con);[/code]

Cara já tentei desse jeito o problema continua, a consulta retorna null.
quando deveria apresentar o valor 2