최대 절전 모드 동작에 대해 더 잘 이해할 필요가 없으며 문제에 대한 의견을 나눌 수 있는지 궁금합니다. Contact
과 Action
에는 1 : 다수의 관계가있는 개체가 있는데, 하나는 Contact
이고 다른 하나는 Action
입니다. 데이터베이스에 Contact
을 저장할 때 Action
(Contact
의 속성) 컬렉션을 어떻게 저장할 수 있습니까? 지금 내가하고있는 일은 Contact
을 먼저 저장 한 다음 Action
을 저장하는 것입니다. 다음은 내 코드입니다 : 모델 개체 :단일 작업으로 컬렉션 속성 저장 최대 절전 모드
public class Contact implements Serializable{
private Integer contactID;
private String givenName;
private String familyName;
private Set<Action> actionSet = new HashSet<Action>();
}
public class Action implements Serializable{
private Integer actionID;
private String actionNote;
private Contact contact;
}
최대 절전 모드 매핑 :
<hibernate-mapping package="com.hibernate.model" schema="hibernatedb">
<class name="Contact" table="CONTACT">
<id column="CONTACT_ID" length="500" name="contactID">
<generator class="increment" />
</id>
<property column="GIVEN_NAME" generated="never" lazy="false" length="100" name="givenName" />
<property column="FAMILY_NAME" generated="never" lazy="false" length="100" name="familyName" />
<!-- one to many mapping with Action -->
<set inverse="true" lazy="false" name="actionSet" sort="unsorted">
<key column="CONTACT_ID" />
<one-to-many class="com.hibernate.model.Action" />
</set>
</class>
</hibernate-mapping>
<hibernate-mapping package="com.hibernate.model" schema="hibernatedb">
<class name="Action" table="ACTION">
<id column="ACTION_ID" length="500" name="actionID">
<generator class="increment" />
</id>
<property column="ACTION_NOTE" type="string" name="actionNote" />
<!-- many to one mapping with Contact -->
<many-to-one name="contact" column="CONTACT_ID"
class="com.hibernate.model.Contact" lazy="false" cascade="save-update" />
</class>
</hibernate-mapping>
이 나는 순간에 그것을 저장하려고하는 방법이다 :
public class ContactServiceImpl implements ContactService{
@Override
public void addContacts(Contact contact) {
contactDAO.addContact(contact);//saving the contact;
if((contact.getActionSet()!=null)&&(contact.getActionSet().size()>0)){
actionService.addAllActions(contact,contact.getActionSet());//saving actions, associated with the contact
}
}
}
참조, Action
을 저장하는 두 가지 작업이 있습니다. 여기에는 Contact
의 속성으로, Contact
이 저장되면 Action
의 모음도 저장해야합니다. 올바른 방법을 알려주세요. 감사합니다