Я недавно задал довольно похожий вопрос, но ответ не решает мою новую проблему.Java EE, Integer to User?
У меня есть две таблицы: пользователь и книга, они находятся в отношениях ManyToOne. В таблице Book есть атрибут user_id, который соединяет обе таблицы. Использование Eclipse I генерируемый классы сущностей, и «user_id» был создан не как Integer, как в базе данных, но:
@JoinColumn(name="user_id")
private User user;
Так что теперь, когда я пытаюсь создать новую «Книгу», как это:
public String saveData() {
if(!validate()){
...
if (book != null) {
System.out.println(getUser());
setName(book.getName());
System.out.println("Post3");
setSurname(book.getSurname());
setAdress(book.getAdress());
setSize(book.getSize());
setContact(book.getContact());
setPrice(book.getPrice());
setOthers(book.getOthers());
setIsReady(book.getIsReady());
setRooms(book.getRooms());
setUser(book.getUser());
System.out.println(user);
}
private boolean validate() {
FacesContext ctx = FacesContext.getCurrentInstance();
boolean result = false;
System.out.println("validate");
if (ctx.getMessageList().isEmpty()) {
book.setName(name.trim());
book.setSurname(surname.trim());
book.setAdress(adress.trim());
book.setSize(size.trim());
book.setContact(contact.trim());
book.setPrice(price);
book.setOthers(others.trim());
book.setIsReady(isReady.trim());
book.setRooms(rooms);
book.setUser(user);
result = true;
}
return result;
}
...
bookDAO.create(book);
Я получаю
Column 'user_id' cannot be null
Я не отправляю 'user_id' в форме, но у меня он хранится в сессии, но как целое.
Так что теперь, когда я пытаюсь заставить этот int в setUser получить ошибку, я могу использовать только объекты User там.
Итак, мой вопрос в том, есть ли способы конвертировать Integer (который мой id_user) в пользователя?
набор user_id в USERID класса пользователя. –