私はテーブルを持ってbook
いるborrow
必要があり、Borrow クラス メソッドで Book を取得したいと考えています。私はこのようなものを持っています:
@Entity
@Table(name="borrow")
public class Borrow {
@Id
@Column(name="ID")
@GeneratedValue
private Long id;
@Column(name="book_id")
private long bookId;
@Column(name="user_id")
private long userId;
@Column(name="borrow_date")
private Date borrowDate;
@Column(name="return_date")
private Date returnDate;
private Book book;
public long getBookId() {
return bookId;
}
public void setBookId(long bookId) {
this.bookId = bookId;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "user_id", nullable = false)
@ForeignKey(name = "id")
public Book getBook() {
return this.book;
}
public void setBook(Book book) {
this.book = book;
}
public long getUserId() {
return userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public Date getBorrowDate() {
return borrowDate;
}
public void setBorrowDate(Date borrowDate) {
this.borrowDate = borrowDate;
}
public Date getReturnDate() {
return returnDate;
}
public void setReturnDate(Date returnDate) {
this.returnDate = returnDate;
}
}
テーブルブックには id フィールドがあり、それに参加したいです。book.id =borrow.book_id のように。私は例外を取得します:
Could not determine type for: Book, at table: borrow, for columns: [org.hibernate.mapping.Column(book)]
ブッククラス:
@Entity
@Table(name="book")
public class Book {
@Id
@Column(name="ID")
@GeneratedValue
private Long id;
@Column(name="title")
private String title;
@Column(name="author")
private String author;
@Column(name="isbn")
private String isbn;
@Column(name="year")
private String year;
@Column(name="publisher")
private String publisher;
@Column(name="book_url")
private String bookUrl;
@Column(name="review_url")
private String reviewUrl;
@Column(name="status_id")
private int status;
@Column(name="accepted")
private boolean accepted;
@Column(name="in_library")
private boolean inLibrary;
@Column(name="user_id")
private long userId;
public long getUserId() {
return userId;
}
public void setUserId(long userId) {
this.userId = userId;
}
public boolean isAccepted() {
return accepted;
}
public void setAccepted(boolean accepted) {
this.accepted = accepted;
}
public boolean isInLibrary() {
return inLibrary;
}
public void setInLibrary(boolean inLibrary) {
this.inLibrary = inLibrary;
}
public Book(long l, String string) {
this.title = string;
this.id = l;
}
public Book() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getIsbn() {
return isbn;
}
public void setIsbn(String isbn) {
this.isbn = isbn;
}
public String getYear() {
return year;
}
public void setYear(String year) {
this.year = year;
}
public String getPublisher() {
return publisher;
}
public void setPublisher(String publisher) {
this.publisher = publisher;
}
public String getBookUrl() {
return bookUrl;
}
public void setBookUrl(String bookUrl) {
this.bookUrl = bookUrl;
}
public String getReviewUrl() {
return reviewUrl;
}
public void setReviewUrl(String reviewUrl) {
this.reviewUrl = reviewUrl;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
}