Consulta não esta funcionando legal

Olá,

Estou tentando fazer uma consulta onde irá mostrar os nomes conforme o usário for digitando os caracteres em jtextfield.
Mas a consulta não esta funcionando legal. Utilizo o firebird.

código do campo jtextfield

      jlf_Alunos.setListData(new Vector<String>(obj_Alunos.mostra_Alunos(jtf_Consulta.getText())));

Código da classe DAO dos alunos;

    public List<String> mostra_Alunos(String nome) {
      List<String> listaConsulta = new ArrayList<String>();

      ResultSet rs = null;
      try {
        PreparedStatement pstmt = stm.getConnection().prepareStatement
         ("select alu_nome from alunos where (alu_nome BETWEEN ? AND 'Z%') order by alu_nome");
        pstmt.setString(1, "'"+nome+"%'");
        rs = pstmt.executeQuery();
        System.out.println(pstmt);

        while(rs.next()) {
          String nome_aluno = rs.getString("ALU_NOME");
          listaConsulta.add(nome_aluno);
        }
      } catch (SQLException ex) {
          new Mostra("Nao localizado a coluna codigo." + ex);
          ex.printStackTrace();
       }
      return listaConsulta;
    }