Выберите родительский элемент и только некоторые поля из дочернего в отношениях @OneToMany с помощью JPA и Criteria BuilJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Выберите родительский элемент и только некоторые поля из дочернего в отношениях @OneToMany с помощью JPA и Criteria Buil

Сообщение Anonymous »

Реализовано отношение «один ко многим» и выбран родительский и дочерний элементы. У меня есть отношение «один ко многим».
Используя построитель критериев, мне нужно получить родительский элемент и все связанные дочерние элементы, но выбрав только некоторые поля из каждого дочернего элемента.

Код: Выделить всё

@Entity
@Table(name="transaction_status")
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class TransactionStatus implements Serializable {
@Id
@Column(name = "id")
@JsonProperty("id")
public String id;

@SerializedName("status")
public String status;

@Column(name="lastUpdatedDate")
@JsonProperty("lastUpdatedDate")
@SerializedName("lastUpdatedDate")
private Date lastUpdatedDate;

@JsonProperty("generatedAt")
@SerializedName("generatedAt")
@JsonIgnore
private Date generatedAt;

@JsonProperty("invoices")
@SerializedName("invoices")
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinColumn(name="transactionstatusId",referencedColumnName = "xmlFilename")
private List invoiceTransactions = new ArrayList();

Код: Выделить всё

@Entity
@Table(name="invoice_transaction")
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor

public class InvoiceTransaction implements Serializable {
@Column(name = "status", nullable = false)
@JsonProperty("status")
@SerializedName("status")
private String status;
@Column(name = "originalStatus", nullable = false)
@JsonProperty("originalStatus")
@SerializedName("originalStatus")
private String originalStatus;

@Column(name = "errorMessage")
@JsonProperty("errorMessage")
@SerializedName("errorMessage")
private String errorMessage;

@Column(name = "generatedAt" )
@JsonProperty("generatedAt")
@SerializedName("generatedAt")
private Date generatedAt;
}

CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery cq = builder.createQuery(TransactionStatus.class);
Root rootTrnStatus = cq.from(TransactionStatus.class);
List resultList = entityManager.createQuery(cq).getResultList();
Эта реализация дает мне список объектов Transactionstatus со списком его дочерних элементов. Я хочу получить следующее:
список объекта Transactionstatus со списком его дочерних элементов с одними полями статуса и errorMessage. Как я могу получить этот результат с помощью Crtiteria builder?
спасибо

Подробнее здесь: https://stackoverflow.com/questions/784 ... hips-using
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как решить проблему N+1 для объекта с несколькими коллекциями в отношениях OneToMany в Spring JPA
    Anonymous » » в форуме JAVA
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Родительский идентификатор NULL в @onetomany Mapping JPA
    Anonymous » » в форуме JAVA
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Как объединить две таблицы с помощью JPA Criteria Builder?
    Anonymous » » в форуме JAVA
    0 Ответы
    54 Просмотры
    Последнее сообщение Anonymous
  • Генерация правильного и/или состояния с помощью JPA Criteria API
    Anonymous » » в форуме JAVA
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Как объединить две таблицы с помощью JPA Criteria Builder?
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»