How to retrieve list of records of a given table by the amount of record that appears in another in the criteria / JPA

0

I'm sorry for the title if it's confusing, but my situation is this: In the system I'm creating a user can log several tips on anything he knows. while persisting the hint in the database will be stored in the hint a reference of the user who registered it.

Because, by criteria / jpa, I can retrieve the most logged-in user tips.

the classes

public class Usuario {

@Id @GeneratedValue
private Long id;

private String nome;
private String cpf;
private String email;
private String foto;
private String senha;
@OneToMany
private List<Pontuacao> pontucao;
@OneToOne
private Setor setor;
private Integer nivel;
public Usuario(){

}


public Long getId() {
    return id;
}


public void setId(Long id) {
    this.id = id;
}


public String getNome() {
    return nome;
}


public void setNome(String nome) {
    this.nome = nome;
}


public String getCpf() {
    return cpf;
}


public void setCpf(String cpf) {
    this.cpf = cpf;
}


public String getEmail() {
    return email;
}


public void setEmail(String email) {
    this.email = email;
}

public String getSenha() {
    return senha;
}


public void setSenha(String senha) {
    this.senha = senha;
}


public List<Pontuacao> getPontucao() {
    return pontucao;
}


public void setPontucao(List<Pontuacao> pontucao) {
    this.pontucao = pontucao;
}


public Setor getSetor() {
    return setor;
}


public void setSetor(Setor setor) {
    this.setor = setor;
}


public String getFoto() {
    return foto;
}


public void setFoto(String foto) {
    this.foto = foto;
}

public Integer getNivel() {
    return nivel;
}


public void setNivel(Integer nivel) {
    this.nivel = nivel;
}

}

Class Hint

@Entity

public class Tip {

@Id @GeneratedValue
private Long id;
private String descricao;
@Lob 
private String texto;
@OneToOne
private Arquivo midia;
@OneToOne
private Processo processo;
@OneToOne
private Usuario usuario;
private Integer votos;
@OneToOne
private Arquivo arquivoPdf;

@OneToMany(fetch=FetchType.EAGER) 
private List<Comentario> comentarios; 

@OneToMany  @LazyCollection(LazyCollectionOption.FALSE) 
private List<Usuario> usuarioVotos;
@Temporal(TemporalType.DATE)
private Date data;

public Dica(){

}

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getDescricao() {
    return descricao;
}

public void setDescricao(String descricao) {
    this.descricao = descricao;
}

public String getTexto() {
    return texto;
}

public void setTexto(String texto) {
    this.texto = texto;
}

public Arquivo getMidia() {
    return midia;
}

public void setMidia(Arquivo midia) {
    this.midia = midia;
}


public Usuario getUsuario() {
    return usuario;
}

public void setUsuario(Usuario usuario) {
    this.usuario = usuario;
}

public Integer getVotos() {
    return votos;
}

public void setVotos(Integer votos) {
    this.votos = votos;
}

public Processo getProcesso() {
    return processo;
}

public void setProcesso(Processo processo) {
    this.processo = processo;
}

public List<Comentario> getComentarios() {
    return comentarios;
}

public void setComentarios(List<Comentario> comentarios) {
    this.comentarios = comentarios;
}

public List<Usuario> getUsuarioVotos() {
    return usuarioVotos;
}

public void setUsuarioVotos(List<Usuario> usuarioVotos) {
    this.usuarioVotos = usuarioVotos;
}

public Arquivo getArquivoPdf() {
    return arquivoPdf;
}

public void setArquivoPdf(Arquivo arquivoPdf) {
    this.arquivoPdf = arquivoPdf;
}

public Date getData() {
    return data;
}

public void setData(Date data) {
    this.data = data;
}
    
asked by anonymous 03.02.2018 / 01:10

0 answers