Boa noite, tenho uma duvida aqui, já que sabemos que JPQL atende o recurso orientação objetos, então eu poderia fazer select juntando 2 tabelas sem a opção do join fetch? Eu tentei e não consegui. Tenho um select assim.
@SuppressWarnings("unchecked")
public List<Usuario> lista() {
return this.manager.createQuery("Select u from Usuario u JOIN FETCH u.perfil").getResultList();
}
TEntei dessa forma aqui e não foi :(.
@SuppressWarnings("unchecked")
public List<Usuario> lista() {
return this.manager.createQuery("Select u from Usuario u u.perfil").getResultList();
}
Teria como fazer algo assim?
@Entity
@SuppressWarnings("serial")
public class Usuario implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long codigo;
private String login;
private String senha;
private String confirmarSenha;
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "perfil_codigo")
private Perfil perfil = new Perfil();
@Entity
@SuppressWarnings("serial")
public class Perfil implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long codigo;
@Enumerated(EnumType.STRING)
private NivelDoAcesso nivelAcesso;
@OneToOne(mappedBy = "perfil")
private Usuario usuario;