Exibir informações em uma Tabela

Boa Tarde!

Na lista de bairros existentes, o sistema não me exibe na tabela o que tem na tabela do BD mas sim o nome da coluna.
Abaixo está a classe modelo:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.jairo.modelo;

/**
 *
 * @author Jairo
 */
public class Bairros {
    private int baicodigo;
    private String baidescricao;

    /**
     * @return the baicodigo
     */
    public int getBaicodigo() {
        return baicodigo;
    }

    /**
     * @param baicodigo the baicodigo to set
     */
    public void setBaicodigo(int baicodigo) {
        this.baicodigo = baicodigo;
    }

    /**
     * @return the baidescricao
     */
    public String getBaidescricao() {
        return baidescricao;
    }

    /**
     * @param baidescricao the baidescricao to set
     */
    public void setBaidescricao(String baidescricao) {
        this.baidescricao = baidescricao;
    }
}

Abaixo o metodo que utilizo no DAO para lsitar as informações:

//metodo que retorna a lista de bairros paginado
    public List getListaBairroPaginado(int pagina, String ordenacao, String pesquisa, String campoapesquisar) throws SQLException {

        int limite = 4;
        int offset = (pagina * limite) - limite;

        String sql = "";
        PreparedStatement ps = null;
        ResultSet rs = null;
        List<Bairros> listaBairros = new ArrayList<Bairros>();
        try {
            if (campoapesquisar.equals("baicodigo")) {
                if (pesquisa.equals("")) {
                    sql = "select * from bairros where " + campoapesquisar + " > 0 order by " + ordenacao + " LIMIT 4 OFFSET " + offset;
                } else {
                    sql = "select * from bairros where " + campoapesquisar + " = " + pesquisa + " order by " + ordenacao + " LIMIT 4 OFFSET " + offset;
                }
            } else {
                sql = "select * from bairros where " + campoapesquisar + " like '%" + pesquisa + "%' order by " + ordenacao + " LIMIT 4 OFFSET " + offset;
            }
            ps = conexao.prepareStatement(sql);
            rs = ps.executeQuery();
            while (rs.next()) {
                Bairros bairros = new Bairros();
                bairros.setBaicodigo(rs.getInt("baicodigo"));
                bairros.setBaidescricao("baidescricao");
                listaBairros.add(bairros);
            }
            return listaBairros;
        } catch (SQLException er) {
            Logger.getLogger(BairroDAO.class.getName()).log(Level.SEVERE, null, er);
        } finally {
            //conexao.close();
            //ps.close();
            //rs.close();
        }
        return null;
    }

Abaixo está o servlet:

response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();

        RequestDispatcher rd = null;

        String baiCodigo = request.getParameter("baicodigo");
        String baiDescricao = request.getParameter("baidescricao");

        Bairros bairros = new Bairros();
        if(baiCodigo != null)
            bairros.setBaicodigo(Integer.parseInt(baiCodigo));
        bairros.setBaidescricao(baiDescricao);

        BairroDAO bairroDAO = new BairroDAO();

        String acao = request.getParameter("acao");

        if (acao == null) {
            acao = "listarBairro";
        }

        if (acao.equals("Alterar")) {
            bairroDAO.alteraBairro(bairros);
            rd = request.getRequestDispatcher("/BairrosCRUD?acao=listarBairro");
        } else if (acao.equals("excluir")) {
            bairroDAO.excluiBairro(bairros);
            rd = request.getRequestDispatcher("/BairrosCRUD?acao=listarBairro");
        } else if (acao.equals("listarBairro")) {
            int numPagina = 1;

            if (request.getParameter("numpagina") != null) {
                numPagina = Integer.parseInt(request.getParameter("numpagina"));
            }
            try {
                String ordenacao = request.getParameter("ordenacao");
                if (ordenacao == null) {
                    ordenacao = "baicodigo";
                }

                String pesquisa = request.getParameter("pesquisa");
                if (pesquisa == null) {
                    pesquisa = "";
                }

                String campoapesquisar = request.getParameter("campoapesquisar");
                if (campoapesquisar == null) {
                    campoapesquisar = "baicodigo";
                }

                List listaBairros = bairroDAO.getListaBairroPaginado(numPagina, ordenacao, pesquisa, campoapesquisar);
                String totalRegistros = bairroDAO.totalRegistros(pesquisa, campoapesquisar);
                request.setAttribute("sessaoListaBairro", listaBairros);
                request.setAttribute("sessaoQtdTotalBairros", totalRegistros);
                rd = request.getRequestDispatcher("/bairros.jsp");
            } catch (SQLException e) {
                Logger.getLogger(BairrosCRUD.class.getName()).log(Level.SEVERE, null, e);
            }
        } else if (acao.equals("Gravar")) {
            bairroDAO.novoBairro(bairros);
            rd = request.getRequestDispatcher("/BairrosCRUD?acao=listarBairro");
        }
        rd.forward(request, response);

abaixo o codigo que lista a tabela na pagina JSP:

   int limite = 4;
    String numPagina = request.getParameter("numpagina");

    if (numPagina == null) {
        numPagina = "1";
    }

    java.util.List listaDeBairros = (java.util.List) request.getAttribute("sessaoListaBairro");

    String ordenacao = request.getParameter("ordenacao");
    if (ordenacao == null) {
        ordenacao = "baicodigo";
    }

    String pesquisa = request.getParameter("pesquisa");
    if (pesquisa == null) {
        pesquisa = "";
    }

    String campoapesquisar = request.getParameter("campoapesquisar");
    if (campoapesquisar == null) {
        campoapesquisar = "baicodigo";
    }

    out.println("<table border='1'>");
    out.println("<form action='BairrosCRUD' method='get'>");
    out.println("<tr><td colspan = '4'>Localizar por:");
    out.println("<select name='campoapesquisar'>");
    if (campoapesquisar.equals("baicodigo")) {
        out.println("<option value='baicodigo' selected='selected'>Codigo</option>");
    } else {
        out.println("<option value='baicodigo'>Codigo</option>");
    }
    if (campoapesquisar.equals("baidescricao")) {
        out.println("<option value='baidescricao' selected='selected'>Descrição</option>");
    } else {
        out.println("<option value='baidescricao'>Descrição</option>");
    }
    out.println("</select>");
    out.println("<input type='text' name='pesquisa' value='" + pesquisa + "'/>");
    out.println("<input type='hidden' name='acao' value='listarBairro' />");
    out.println("<input type='image' src='imagens/localizar.png'/></tr></td>");
    out.println("</form>");
    out.println("<tr><td colspan = '2'><a href='bairrounico.jsp?acao=novo'><b>Novo</b></a></td><td colspan = '2'><b>Ordenado por:   " + ordenacao + "</b> </td></tr>");
    out.println("<tr class='linhaEspecialTabela'>");
    out.println("<td align='center'><a href='BairrosCRUD?campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&acao=listarBairro&ordenacao=baicodigo&numpagina=" + Integer.parseInt(numPagina) + "'>Codigo</a></td><td align='center'><a href='BairrosCRUD?campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&acao=listarBairro&ordenacao=baidescricao&numpagina=" + Integer.parseInt(numPagina) + "'>Descrição</a></td><td align='center'>Alterar</td><td align='center'>Excluir</td>");
    out.println("</tr>");

    for (java.util.Iterator iterator = listaDeBairros.iterator(); iterator.hasNext();) {
        br.com.jairo.modelo.Bairros bairros = (br.com.jairo.modelo.Bairros) iterator.next();
        out.println("<tr>");
        String baiCodigo = String.valueOf(bairros.getBaicodigo());
        String baiDescricao = bairros.getBaidescricao();
        //System.out.println(baiDescricao);
        out.println("<td>" + baiCodigo + "</td>");
        out.println("<td>" + baiDescricao + "</td>");
        out.println("<td><div align='center'><a href='bairrounico.jsp?acao=alterar&baicodigo=" + baiCodigo + "&baidescricao=" + baiDescricao + "'><img src='imagens/altera.png' alt='Altera'/></a></div></td>");
        out.println("<td align='center'><a href='BairrosCRUD?numpagina=" + Integer.parseInt(numPagina) + "&campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&acao=excluir&baicodigo=" + baiCodigo + "'><img src='imagens/delete.png' alt='Altera'/></a></td>");
        out.println("</tr>");

    }

    String totalRegistros = (String) request.getAttribute("sessaoQtdTotalBairros");
    int totalPaginas = Integer.parseInt(totalRegistros) / limite;

    if (Integer.parseInt(totalRegistros) % limite != 0) {
        totalPaginas++;
    }
    out.println("<tr class='linhaEspecialTable'><td colspan='4'>Quantidade de Registros: " + totalRegistros + " Total de Paginas: " + totalPaginas + "<br>");
    out.println("</tr></td>");
    out.println("<tr class='linhaEspecialTable'><td colspan='4'>Pagina:");

    int pagAnterior;
    for (int i = 1; i <= totalPaginas; i++) {
        if (i == Integer.parseInt(numPagina)) {
            out.println("<b>" + numPagina + "</b>");
        }
    }

    int primeiraPagina;
    if (Integer.parseInt(numPagina) > 1) {
        primeiraPagina = 1;
        out.println("<a href=BairrosCRUD?campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&ordenacao=" + ordenacao + "&acao=listarBairro&numpagina=" + primeiraPagina + ">Primeira</a>");
    }

    int paginaAnterior;
    if (Integer.parseInt(numPagina) > 1) {
        paginaAnterior = Integer.parseInt(numPagina) - 1;
        out.println("<a href=BairrosCRUD?campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&ordenacao=" + ordenacao + "&acao=listarBairro&numpagina=" + paginaAnterior + "> Anterior </a>");
    }

    int proxPagina;
    if ((Integer.parseInt(totalRegistros) - (Integer.parseInt(numPagina)) * limite) > 0) {
        proxPagina = Integer.parseInt(numPagina) + 1;
        out.println("<a href=BairrosCRUD?campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&ordenacao=" + ordenacao + "&acao=listarBairro&numpagina=" + proxPagina + "> Proxima </a>");
    }

    int ultimaPagina;
    ultimaPagina = totalPaginas;
    if (Integer.parseInt(totalRegistros) - (Integer.parseInt(numPagina) * limite) > 0) {
        out.println("<a href=BairrosCRUD?campoapesquisar=" + campoapesquisar + "&pesquisa=" + pesquisa + "&ordenacao=" + ordenacao + "&acao=listarBairro&numpagina=" + ultimaPagina + ">Ultima</a>");
    }
    out.println("</td></tr>");
    out.println("</table>");

Alguem pode me dizer onde estou errando, pois ainda não consegui localizar o erro.
Abaixo a imagem da tela exibindo as informações:

Maioria desse tipo de problema se resolve apenas debugando e inspecionado cada passo.

Veja que nesta linha você seta com o nome do campo ao invés de pegar o valor do resultset (rs.getString("nome do campo")):

bairros.setBaidescricao("baidescricao")

bairros.setBaidescricao(rs.getString("baidescricao"));

Boa Tarde Jinathan_Medeiros!

Vou tentar amanhã a tarde, pois, já esquentei os miolos procurando este erro.
Se observar na linha acima fiz algo parecido, mas fiz porque tinha de transformar em Inteiro.

Este processo tem de ser feito para todos os resultados que deseja recuperar do ResultSet que sua query retorna, independente do tipo de dado!

Bom dia e Feliz Ano Novo Jonathan_Medeiros!

Funcionou perfeitamente. Muito Obrigado!

Bom Dia e Feliz Ano Novo javaflex!

Funcionou perfeitamente.Muito Obrigado!