title: @JoinColumnsOrFormulas cause n+1 issue
body: <p>I am facing the n+1 query issue when I use @JoinColumnsOrFormulas or @JoinColumns with @NamedEntityGraph(includeAllAttributes = true)</p>
  
  <p>I tried to also left join the entity in Specification and it also cause n+1 query issue.</p>
  
  <p>Entity:</p>
  
  <pre><code>@Data
  @Entity
  @Table(name = "book")
  @NamedEntityGraph(name = "all", includeAllAttributes = true)
  public class BookEntity implements JpaEntity {
  
      @ManyToOne(targetEntity = CustomerEntity.class)
      @JoinColumnsOrFormulas({
              @JoinColumnOrFormula(column = @JoinColumn(name = "customer", referencedColumnName = "number", insertable = false, updatable = false)),
              @JoinColumnOrFormula(column = @JoinColumn(name = "sub_customer", referencedColumnName = "sub_number", insertable = false, updatable = false)),
              @JoinColumnOrFormula(formula = @JoinFormula(value = "'2019'", referencedColumnName = "year"))
      })
      private CustomerEntity customerEntity;
  }
  </code></pre>
  
  <pre><code>@Entity
  @Data
  @Table(name = "customer")
  public class CustomerEntity implements JpaEntity {
  
      @Id
      @Column(name = "id")
      private Integer id;
      @Column(name = "number", columnDefinition = "INTEGER")
      private Integer number;
      @Column(name = "sub_number", columnDefinition = "INTEGER")
      private Integer subNumber;
      @Column(name = "year")
      private String year;
  }
  </code></pre>
  
  <p>Repository:</p>
  
  <pre><code>@Override
      @EntityGraph(value = "all")
      Page&lt;BookEntity&gt; findAll(Specification&lt;BookEntity&gt; spec, Pageable pageable);
  </code></pre>
  
  <p>I see that the query is correct. I see the join for the first query, so it looks like I have the full entity and no need to make n+1 query. But after correct query I see additional selects for the CustomerEntity. </p>
  
  <p>Can someone help me to avoid n+1 issue with this case?</p>