我正在尝试添加新名称,姓氏和电子邮件。单击保存按钮后,我收到一条错误消息“字段'id'中对象'员工'中的字段错误” 我该如何解决此错误。我正在将Spring Boot与thymeleaf和jquery一起使用。
和
项目链接为: Here
谢谢
答案 0 :(得分:0)
发生错误,因为Employee实体的'id'字段为空/空字符串。根据Employee.java中的“ id”定义,它应该是一个整数值。您需要先将一些整数值传递到员工对象的此“ id”字段,然后再保存它。使用以下技术,使应用程序使用数据库序列。
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_generator")
@SequenceGenerator(name="seq_generator", sequenceName = "my_seq", allocationSize=50)
@Column(name = "id", updatable = false, nullable = false)
private int id;
答案 1 :(得分:0)
将列ID声明为 Integer ,并且不要从UI传递它,也不要将值作为空对象传递。如果您想将其保留为int,则始终从UI传递0。传递空字符串将始终引发异常,直到您没有自己的messageConverter处理。
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name=id)
private Integer id;
答案 2 :(得分:0)
您需要在控制器上将名为id的参数更改为Integer而不是int。原始int变量不能为null。