Есть две связанные таблицы, Runner и Registration.
package ru.worldskills.model.entity;
import javax.persistence.*;
import java.util.Date;
@Entity
@Table(name = "runner")
public class Runner{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "RunnerId")
private int runnerId;
@Column(name = "Email")
private String email;
@ManyToOne
@JoinColumn(name = "Gender", foreignKey = @ForeignKey(ConstraintMode.CONSTRAINT))
private Gender gender;
@Column(name = "DateOfBirth")
private Date dateOfBirth;
@ManyToOne
@JoinColumn(name = "CountryCode", foreignKey = @ForeignKey(ConstraintMode.CONSTRAINT))
private Country country;
}
и
package ru.worldskills.model.entity;
import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;
@Entity
@Table(name = "registration")
public class Registration{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "RegistrationId")
private int registrationId;
@OneToOne
@JoinColumn(name = "RunnerId")
private Runner runner;
@Column(name = "RegistrationDateTime")
private Date registrationDateTime;
@ManyToOne
@JoinColumn(name = "RaceKitOptionId", foreignKey = @ForeignKey(ConstraintMode.CONSTRAINT))
private RaceKitOption raceKitOption;
@ManyToOne
@JoinColumn(name = "RegistrationStatusId", foreignKey = @ForeignKey(ConstraintMode.CONSTRAINT))
private RegistrationStatus registrationStatus;
@Column(name = "cost")
private BigDecimal cost;
@ManyToOne
@JoinColumn(name = "CharityId", foreignKey = @ForeignKey(ConstraintMode.CONSTRAINT))
private Charity charity;
@Column(name = "SponsorshipTarget")
private BigDecimal sponsorshipTarget;
}
Нужно получить строку из Registration по RunnerID. В нативном SQL это делается легко, а тут не получается. Можно и CriteriaAPI и JPQL использовать.
Например, получим регистрацию с id=5:
// start a transaction
transaction = session.beginTransaction();
// get an registration object
Registration registration = session.get(Registration.class, 5);
// commit transaction
transaction.commit();
System.out.println(registration.getRunner()); // получили также и runner внутри
Или что-то другое имелось в виду?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Имеется конфиг для CircleCIНа локальной машине при выполнении CircleCI, все проходит
Я задался вопросом, как правильно хранить кэш ? Тоесть я хочу услышать предложение как лучше всего его хранитьНапример я думаю так: Качаем...