Boa tarde, como estão todos ? Tenho uma dúvida relacionada a junção de tabelas usando o JPQL no meu projeto !!! Tenho um entity chamado ProcedimentoCid que faz relação ManyToOne com duas classes, sendo elas : Procedimento e Cid. No meu repositorio de ProcedimentoCid eu gostaria de fazer um select usando JPQL, pra fazer a junção dessas duas classes na minha classe primaria.
Vou soltar o código pra vocês pra ficar melhor de entender e visualizar !!! Grato.
Entidade
package br.com.vozdigital.smart.core.entity;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper=false)
@Entity
@Table(name= "procedimento_cid", schema="cre")
public class ProcedimentoCid extends BaseEntity {
private static final long serialVersionUID = -6274979078252383078L;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="pcid_proc_id", referencedColumnName = "id", nullable = false)
private Procedimento procedimento;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="pcid_cid_id", referencedColumnName = "id", nullable=false)
private Cid cid;
}
Repositorio
package br.com.vozdigital.smart.data.repository;
import java.util.List;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import br.com.vozdigital.smart.core.entity.ProcedimentoCid;
@Repository
public interface ProcedimentoCidRepository extends BaseRepository<ProcedimentoCid, Long> {
List<ProcedimentoCid> findByProcedimento_Id(@Param("id") Long id);
}
Gostaria de fazer a JPQL retornando o objeto das tabelas sem especificar os campos !!!