0
我想節省1的用戶表中的值是引用管理員表adminId對用戶表插入的1對被引用管理表冬眠
一個外鍵的用戶表中的值我user.java我有這個
@OneToOne
@JoinColumn(name = "adminId")
Admin admin;
這是上述映射到user.java引用管理表
public Admin getAdmins() {
return admin;
}
public void setAdmin(Admin id) {
this.admin = id;
}
在我的DAO類SpringBoot APPLICA的getter和setter重刑,我堅持給用戶的表像這樣
public void save(User user) {
Admin admin = (Admin)getSession().createQuery("from Admin a where a.adminId = ?")
.setParameter(0, 1);
user.setAdmin(admin);
getSession().save(user);
}
EDITTED: 這是我正在試圖保存用戶
public void save(User user) {
long id = 1 ;
Admin admin = (Admin)getSession().createQuery("from Admin a where a.adminId = ?").setParameter(0, 1).list().get(0);
user.setAdminz(admin);
getSession().save(user);
}
這是節省活動
@RequestMapping(value = "/create-user", method = RequestMethod.POST)
public ModelAndView createUser(HttpServletRequest request,
HttpServletResponse response,
@RequestParam String name,
@RequestParam String email) {
try {
// create new user object
User user = new User();
user.setName(name);
user.setEmail(email);
user.setTimestamp(new Date().getTime());
// save user in db (if new)
if (_userDao.getByEmail(email) == null) {
_userDao.save(user);
}
我的控制器代碼
當我嘗試保存時出現此錯誤
com.xxx.MainController [0;39m [2m:[0;39m Exception in creating user:
我已經修改了我的映射到這個不接受爲空的
@OneToOne
@JoinColumn(name = "adminId",nullable = false)
Admin admin;
如果我刪除可空=虛假註釋,NULL值保存到用戶表的adminId領域。
請問我做錯了什麼?請協助。
方法的getCurrentSession()是未定義的類型的UserDAO >>>>這是錯誤,現在我得到 –
慚愧是的getSession(),我打字錯誤已經修改。 –
好的。我正在這樣做Admin Admin =(Admin)getSession()。get(Admin.class,1); –