[Resolvido] Between no Hibernate

1 resposta
calel
Pesquisei e aparentemente estou fazendo o código correto, mas a pesquisa continua sem trazer dados =/ Fiz o código abaixo e foram retornados 3 registros, todos do dia 23/07/2010.
select * from Produto p where p.dataInicioVenda between "2010/07/22" and "2010/07/24"
Agora não sei qual o erro no código abaixo para não trazer nenhum registro =/
public List<Produto> produtosEntreAsData(Calendar inicio, Calendar fim){
		return session.createCriteria(Produto.class)
					.add(Restrictions.between("dataInicioVenda", 
							inicio, fim))
					.list();
	}
E o código que chama esse método.
public static void main(String[] args){
		Calendar inicio = new GregorianCalendar(2010,7,22);
		Calendar fim = new GregorianCalendar(2010,7,24);
		List<Produto> lista = new ProdutoDao().produtosEntreAsData(inicio, fim);
		System.out.println("Lista: " + lista.size());
		for (Produto produto : lista) {
			System.out.println(produto.getNome());
		}
	}
Classe Produto
@Entity
public class Produto {
	@Id
	@GeneratedValue
	private long id;
	@Column(length=100)
	private String nome;
	@Column(name = "preco_total_prod", nullable=true, length= 50)
	private double preco;
	@Temporal(TemporalType.DATE)
	private Calendar dataInicioVenda;
	private String descricao;

/*Gets and Sets */

1 Resposta

calel

Resolvido, o jeito de se trabalhar com o Between está correto, apenas esqueci que a GregorianCalendar inicia a contagem de mês em 0 XD

Criado 5 de agosto de 2010
Ultima resposta 5 de ago. de 2010
Respostas 1
Participantes 1