I have entities ( Email , Sender. New sender entities cannot be created.)
@Entity
Class Email {
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Id
@Column(name="id")
private Integer id;
@column(name="subject")
private String subject;
@OneToOne
@JoinColumn(name = "sender" , nullable=false, referencedColumnName = "senderId")
private Sender sender;
}
@Entity
Class Sender {
@Id
@Column(name="senderId")
private Integer senderId;
@Column(name="senderName")
private String senderName;
}
I have to persist the email entity using JPA . I get data from the JSON and JSON does not contain any primary or foreign key ID's
{ "subject" : "Blah Blah",
"sender" : "SenderName" }
Email obj = new Email().
obj.setSubject( "Blah Blah");
Sender sen = new Sender(); // This is wrong - I have to get the one in DB. Not create
// senderRepository.findBySenderName("senderName")
sen.setName("SenderName")
obj.setSender(sen);
emailRepository.save( obj )
Please guide me. How can I save mail entities when only senderName is available. Is my entity structure wrong ?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…