Я пытаюсь использовать внешний ключ в Hibernate / Spring Boot с аннотациями @OneToMany и @ManyToOne, но постоянно получаю эту ошибку:
java.sql.SQLException: Field 'note_id' doesn't have a default value
Мой код:
Note.java
@Entity
@Table(name = "notes")
@EntityListeners(AuditingEntityListener.class)
public class Note {
public Note() {
}
public Note(String name, String content) {
this.name = name;
this.content = content;
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "note_id")
private Integer id;
@ManyToOne
@JoinColumn(name = "user_id")
private User user;
@NotBlank
private String name;
@NotBlank
@Column(columnDefinition="LONGTEXT")
private String content;
User.java
@Entity
@Table(name = "user")
@EntityListeners(AuditingEntityListener.class)
public class User implements Serializable {
public User() {
}
public User(String username, String password) {
this.username = username;
this.password = password;
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "user_id")
private Integer id;
@OneToMany(mappedBy = "user", cascade = ALL)
private Set<Note> notes;
@NotEmpty
@Column(nullable = false, unique = true)
private String username;
@NotEmpty
private String password;
Ошибка возникает всякий раз, когда я пытаюсь создать заметку.Заранее спасибо!