Я разрабатываю веб-приложение, используя весну и спящий режим. Я использую одно к одному сопоставление между двумя сотрудниками таблиц и PersonelDetails.Spring + hibernate one to one mapping
ниже мои боб классы
======================= Сотрудник ============= ========================
@Entity
@Table(name="employee")
public class Employee {
@Id
@Column
@GeneratedValue
private int empid;
@Column
private String firstName;
@Column
private String lastName;
@Column
private String email;
@Column
private String password;
@Column
private boolean isAdmin;
@Column
private boolean isActive;
@Column
private boolean isLocked;
//getter setters
=================== = personalDetails класс ====================
@Entity
@Table(name="PersonalDetails")
public class PersonalDetails {
@Column
@Id
private int empid;
@Column
private String personalEmail;
@Column
private String mob;
@Column
private String permenantAdress;
@Column
private String currentAddress;
@Column
private String gender;
@Column
private String maritialStatus;
@MapsId
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "empid", referencedColumnName = "empid")
@ForeignKey(name="empid")
private Employee employee;
//getter setters
В моей таблице приложения сотрудника заполняется пользователем администратора при создании нового сотрудника после этого employyee сам заполнить personalDetails таблица по имени пользователя на его счету ed by Admin)
Теперь, когда я пытаюсь отправить компонент личной информации в спящий режим сначала, я должен получить компонент-сотрудник из таблицы employee, затем вызовите метод setEmployee поверх класса personalDetails и сохраните компонент bean-компонента в personalDetails и отправьте на спящий режим для сохранение в базе данных.
Таким образом, получая bean-компонент из базы данных и снова отправляя обратно через personalDetails, bean приводит к проблеме с производительностью.
Может ли кто-нибудь помочь здесь, чтобы уточнить, сохраняя данные в дочерней таблице (PersonalDetails), действительно ли обязательно передать родительский объект (Employee)?
======================= код для хранения personalDetails ===============
@RequestMapping(value="addpersonal")
public ModelAndView addPersonalDetails(@ModelAttribute("personalDetails") PersonalDetails personalDetails) {
//personalDetails.setEmpid(1);
personalDetails.setCurrentAddress("niljyoti");
personalDetails.setMob("9405715872");
personalDetails.setPermenantAdress("address");
Employee e = empService.getEmployeebyUserName(uname);
personalDetails.setEmployee(e);
personalDetailsService.addPersonalDetails(personalDetails);
return new ModelAndView("home");
}
Какого код вызывают какую проблему производительности? Опубликуйте код, а не описывайте его. –