Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Classe TesteConsulta não traz resultado

Criei a classe TesteConsulta porém a mesma não traz nenhum resultado.

public static void main(String[] args){

        EntityManager manager = new JPAUtil().getEntityManager();

        Conta conta = new Conta();
        conta.setId(2);


        Query query = manager.createQuery("select m from Movimentacao m where m.conta=:pConta" // se quiser fechar aqui );
        + " order by m.valor desc"); // Fazendo orderBy pelo valor

        //Passando o objeto conta para ser filtado no where
        query.setParameter("pConta", conta);

        List<Movimentacao> movimentacoes = query.getResultList();

        System.out.println("\n ####  testBefore ##### ");

        for (Movimentacao m : movimentacoes) {
            System.out.println("\nDescricao ..: " + m.getDescricao());
            System.out.println("Valor ......: R$ " + m.getValor());
        }

        System.out.println("\n ####  testeAfter ##### ");
INFO: HHH000108: Foreign keys: [fk257eb923c547677d]
jan 12, 2017 3:55:29 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [fk257eb923c547677d, primary]
jan 12, 2017 3:55:29 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000232: Schema update complete
Hibernate: 
    select
        movimentac0_.id as id1_,
        movimentac0_.conta_id as conta6_1_,
        movimentac0_.data as data1_,
        movimentac0_.descricao as descricao1_,
        movimentac0_.tipoMovimentacao as tipoMovi4_1_,
        movimentac0_.valor as valor1_ 
    from
        Movimentacao movimentac0_ 
    where
        movimentac0_.conta_id=? 
    order by
        movimentac0_.valor desc

 ####  testBefore ##### 

 ####  testeAfter ##### 

Banco de Dados

1    6543    001 - BANCO DO BRASIL    16987-8    Maria dos Santos
2    1745    237 - BANCO BRADESCO    86759-1    Paulo Roberto Souza
3    4606    341 - BANCO ITAU UNIBANCO    46346-3    Antonio Duraes
4    9876    033 - BANCO SANTANDER    12345-6    Leandra Marques
5    1234    104 - CAIXA ECONOMICA FEDERAL    98654-3    Alexandre Duarte
2 respostas

Olá Loran.dba,

Não vi problema com seu método, inclusive o meu está bem parecido com o seu, dá uma conferida na tabela de movimentação, verifica se tem movimentação para o conta_id 2.

solução!

Joel,

Obrigado pela reposta.

A conta 2 tinha movimentação, porém percebi que cometi o erro de rodar o PopulaMovimentacao primeiro, ao invés de rodar o PopulaConta com isso o campo conta_id estava null, já que não possuia referencia, dropei as tabelas e rodei na sequencia correta e funcionou.

Obrigado

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software