Pessoal, preciso na minha aplicação trazer um campo as opcoes para uma operação obtida atravez de um distinct dentro da minha tabela demanda.
Alguem sabe como fazer usando Criteria?
Obrigado!
Pessoal, preciso na minha aplicação trazer um campo as opcoes para uma operação obtida atravez de um distinct dentro da minha tabela demanda.
Alguem sabe como fazer usando Criteria?
Obrigado!
public List<Demanda> retornaSistemas() {
Criteria criteria = session.createCriteria(Demanda.class);
return criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
}
criteria.setProjection(Projections.distinct(Projections.property("campo")));Blz? Flw! :thumbup:
Beleza, funcionou.
Estou muito confuso com Projection, conhece algum post bom sobre, ou consegue me ajudar a clarear?
Valeu!
A documentação do Hibernate é bem rica, e também aprendi muito lendo o Java Persistence With Hibernate. Não é tão complicado quanto parece 
Blz? Flw! :thumbup:
A documentação do Hibernate é bem rica, e também aprendi muito lendo o Java Persistence With Hibernate. Não é tão complicado quanto parece![]()
Blz? Flw! :thumbup:
OK, Obrigado!
A documentação do Hibernate é bem rica, e também aprendi muito lendo o Java Persistence With Hibernate. Não é tão complicado quanto parece![]()
Blz? Flw! :thumbup:
Tenho 2 classes onde cada tem o campo x. Preciso pegar todos registros da tabela 2 baseado em uma infomacao que tem na tabela 1.
Usando o projection, consigo fazer isso? Não consegui dizer que sim analisando a documentação.
Obrigado
A finalidade de Projections é outra, voltada para selecionar certos campos, agrupar, contar, somar, etc.
Poste as classes que você falou pra ficar mais fácil explicar como fazer o que perguntou.
Flw! :thumbup:
A finalidade de Projections é outra, voltada para selecionar certos campos, agrupar, contar, somar, etc.Poste as classes que você falou pra ficar mais fácil explicar como fazer o que perguntou.
Flw! :thumbup:
A, entendi...
Tenho a classe Entrega:@Entity
public class Entrega {
static Logger log = Logger.getLogger(Entrega.class);
@Id
@GeneratedValue
private int id;
@Index(name = "numeroDemandaEntrega")
private String numeroDemanda;
@Index(name = "numeroServicoEntrega")
private String numeroServico;
@Index(name = "numeroOSEntrega")
private String numeroOS;
@Index(name = "numeroEntrega")
private String numeroEntrega;
private String situacao;
// private String percentual;
private double valorEstimado;
@Index(name = "dataPrevistaEntrega")
private Date dataPrevista;
@Index(name = "dataEfetivaEntrega")
private Date dataEfetiva;
private String codigoOS;
@Entity
public class Demanda {
static Logger log = Logger.getLogger(Demanda.class);
@Id
private String numeroDemanda;
private String demanda;
private String area;
private String sistema;
private String situacao;
private String totalPF;
private Date dtInclusaoDemanda;
@Index(name = "DemandaFilial")
private String filial;
@Index(name = "DemandaEmpresa")
private String empresa;
O campo numeroDemanda possui nas duas, e eu preciso pegar todos registros de entrega filtrado por filial, item somente obtido na demanda, o que me obriga a fazer um JOIN.
Entendeu o problema?
VLW
@Entity
public class Demanda {
@Id
private String numeroDemanda;
@OneToMany
private List<Entrega> entregas;
}
@Entity
public class Entrega {
@Id
@GeneratedValue
private int id;
@ManyToOne
private Demanda demanda;
}
// gets, sets e demais atributos omitidos; estou considerando que uma demanda tem muitas entregas
Criteria c = session.createCriteria(Entrega.class);
c.add(Restrictions.eq("demanda", demanda));
return c.list();
Flw! :thumbup: