Я новый пользователь Struts 2 с гибернацией.У меня есть 2 таблицы: "Клиент" и "Координаты" (французское слово). В моей таблице "Клиент" у меня есть FK с именем "ordonnees_id ", который ссылается на поле" id "из таблицы" Координаты ". Я создал форму вставки, подобную этой:
Файл add.jsp
<s:form method="post" action="create">
<s:textfield cssClass="" label="Nom" name="client.nom" />
<s:textfield cssClass="" label="Prénom" name="client.prenom" />
....
<s:textfield cssClass="" label="Email" name="coordonnees.email" />
<s:textfield cssClass="" label="Adresse" name="coordonnees.adresse" />
<s:submit value="Insert" />
</s:form>
Файл ClientAction.java
private Client client;
private ClientManager clientManager;
private Coordonnees coordonnees;
private CoordonneesManager coordonneesManager;
public String create() {
client = getClient();
coordonnees = getCoordonnees();
try {
clientManager.insert(client);
coordonneesManager.insert(coordonnees);
return SUCCESS;
} catch (Exception e) {
e.printStackTrace();
return ERROR;
}
}
Файл CoordonneesManager.java
public boolean insert(Coordonnees coordonnees) {
session = MyHibernateUtil.currentSession();
tx = session.beginTransaction();
try {
session.save(coordonnees);
log.info("Enregistrement de : " + getClass());
return true;
} catch (Exception e) {
log.error(e);
return false;
} finally {
tx.commit();
MyHibernateUtil.closeSession();
}
}
В моем клиенте.hbm.xml file:
<many-to-one class="model.Coordonnees" fetch="select" name="coordonnees">
<column name="coordoonnees_id"/>
</many-to-one>
Вот моя проблема: когда я отправляю свою форму, я хотел бы вставить данные в таблицу Client (конечно ...), в таблицу "Coordonnees" (это работаетхорошо), и я хотел бы получить "id", который я только что создал из таблицы Coordonnees и вставить его в мою таблицу Client (поле "correonnees_id" => мой FK).
Есть ли простой вариант в struts2сделать это?Конечно, я могу выполнить запрос на выборку для моей последней вставки в таблицу Coordonnees, получить идентификатор и обновить мою таблицу Client ... Но это не главное, я бы хотел, чтобы Struts сделал это для меня (если это возможно, конечно).
Спасибо всем за помощь:)