Galera, estou aprendendo Spring boot e estou tentando retornar dados de uma consulta com alias, como esta:
private final String SQL_LISTAR_TODOS = "select p.id as 'idProjeto', p.nome 'nomeProjeto', p.ativo 'ativoProjeto' from projeto p";
O meu método que faz a consulta é:
@Override
public List<Projeto> listarTodos() {
return jdbcTemplate.query(SQL_LISTAR_TODOS, new BeanPropertyRowMapper<Projeto>(Projeto.class));
}
E meu RowMapper:
public class ProjetoRowMapper implements RowMapper<Projeto> {
@Override
public Projeto mapRow(final ResultSet row, final int rowNum) throws SQLException {
final Projeto projeto;
projeto = new Projeto();
projeto.setId(row.getLong("idProjeto"));
projeto.setNome(row.getString("nomeProjeto"));
projeto.setAtivo(row.getBoolean("ativoProjeto"));
return projeto;
}
}
Porém, não funciona devido ao Alias.
Não retorna erro, porém, os campos não são retornados.
Alguém tem alguma dica?
Estou usando Mysql Server 8 com Spring boot 2