Witam serdecznie, siedzę z tym problemem już od dłuższej chwili, i nie mogę sobie poradzić :
@Entity
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
@ManyToOne
@JoinColumn(name = "authorId") <--- nasz klucz obcy, upewniałem się, że w bazie danych jest ta sama nazwa
private Author author;
@Column(name = "title")
private String title;
@Column(name = "pages")
private long pages;
@Column(name = "available")
private boolean available;
public long getId() {
return id;
}
public Author getAuthor() {
return author;
}
public String getTitle() {
return title;
}
public long getPages() {
return pages;
}
public boolean isAvailable() {
return available;
}
public void setAuthor(Author author) {
this.author = author;
}
public void setIsAvailable(boolean available) {
this.available = available;
}
}
@Entity
public class Author {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
@NotNull
@Column(name = "firstName")
private String firstName;
@NotNull
@Column(name = "lastName")
private String lastName;
@OneToMany(mappedBy = "author") //name field from book.java
private List <Book> listOfBooks = new ArrayList<>();
public long getId() {
return id;
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
public List<Book> getListOfBooks() {
return listOfBooks;
}
}
Oto jaki dodaje wyjątek przy odpaleniu adresu url z controllera :
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'book0_.id' in 'field list'
Przewertowałem stackoverflowa, nic nie pomaga. Oglądałem tutki na youtubie, i nic. Jestem już trochę sfrustrowany, ale nie chcę żeby przerosła mnie relacja OneToMany, czy ktoś z Was ma jakieś propozycję.
Pozdrawiam, i z góry dzięki :)