[RESOLVIDO] Hibernate Criteria realizando um select DATE

Minha duvida eh em retornar as notas de determinado mes,
mas no banco a data esta da forma americana yyyy/mm/dd
meu método é o seguinte:


public List buscarNota(int mes , int ano){
		session = HibernateUtil.getSessionFactory().openSession();
		try{
			
			Criteria cri = session.createCriteria(NF.class);
  			
              //restriçoes para selecionar o mes e o ano passado por parametro
  			
  		    return  cri.list();
			
		}finally{
			session.clear();
			session.close();
		}

	}

Alguma ideia para esse caso? Obrigado

Usa HQL, algo assim

public List buscarNota(int mes , int ano){
		session = HibernateUtil.getSessionFactory().openSession();
		try{
			
			Query q = session.createQuery("from NF where month(data) = :mes and year(data) = :ano");
  			q.setParameter("mes", mes);
            q.setParameter("ano", ano);
  			
  		    return  q.list();
			
		}finally{
			session.clear();
			session.close();
		}

	}

Vlws amigo deu certo aqui, Brigadao

Mas se alguem me ajudar com criteria seria melhor, logo que só utilizo criteria no meu projeto

Cara, posta o código que você fez que fica mais facil. O “data” é o nome do atributo da sua classe NF que corresponde ao campo dataentrada no seu banco.

Era um erro idiota meu hahahah
mas agora ta funcionando

teria como vc me ajudar nesta hql, preciso realizar um distinct e um order by,

vc me aconselha a fazer isso na busca ou criar um TreeSet, utilizar Set ao invés de List?

Brigadao

[quote=LucianoTulio]Era um erro idiota meu hahahah
mas agora ta funcionando

teria como vc me ajudar nesta hql, preciso realizar um distinct e um order by,

vc me aconselha a fazer isso na busca ou criar um TreeSet, utilizar Set ao invés de List?

Brigadao[/quote]

Qual o motivo de usar distinct? só adicionar o "order by " + nome do atributo ao HQL

pq preciso apenas saber o codcliente q tem nota, s ele tem 1 ou + nao importa, so s ele tem ou não

e desse codigo vou fazer a busca em outra tabela do meu projeto