java - Int 字段的空值

标签 java oracle entity spring-data-neo4j

我有一个实体类,它有一个 int 字段,表中的列类型是 Number (10,0)。表中默认值为“NULL”。使用 Spring data JPA 当我尝试使用 jpa 选择查询时,出现以下错误。

java.lang.IllegalArgumentException: Can not set int field com.test.app.entity.TestProject.baseUserIdNumber to null value

我无法更改表中的任何内容,因为它已经在生产中创建并使用。我可以使用实体类或 JPQL 做任何事情

@Entity
public class TestProject {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int projectId;
    private String description;
    private String name;
    private int seqNumber
    private LocalDate startDateTime;
    private LocalDate endDateTime;
    @Column(name = "baseUserIdNumber")
    private int myfield;
    private String projStatus;



constructors ()
getters()
Setters()


}

最佳答案

您可以只使用默认值定义字段,并将其定义为 int 而不是 Integer,这样它就不会接受 NULL 值。

@Column(name = "my_column")
private int myField = 0;

关于java - Int 字段的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60952031/

相关文章:

json - 使用 GetSetMethodNormalizer 将 Doctrine 实体转为 Json 返回 fatal error

primary-key - 实体关系——弱实体能否作为 'one to many' 参与 'one' 关系

java - log4j 到 log4j2 迁移的等效编程记录器初始化

ruby-on-rails - Ruby - Oci8 - 行类型调用函数不起作用

java - 使用 Jackson Java 解析 JSON

sql - 如何对表格中的项目重新排序

sql - Oracle 数据库中有 boolean 类型吗?

java - 对命名查询使用 if else 语句?

Java - 调用异常

java - Mat 的 ConvertTo() 方法无法正常工作?