首页 文章

如何在java pojo类中编写枚举列?

提问于
浏览
-3

在我的数据库中,我有一列enum数据类型 . 下面是表格结构 .

CREATE TYPE STATUSENUM AS ENUM('Published','Draft','Expire');
CREATE TABLE IF NOT EXISTS T_COMMODITY_INSIGHT(
    ID integer NOT NULL,
    COMMODITY_ID integer NOT NULL,
    CREATED_DATE date NOT NULL,
    MODIFIED_DATE date NOT NULL,
    STATUS STATUSENUM DEFAULT 'Draft',
    CONSTRAINT "T_COMMODITY_INSIGHT_pkey" PRIMARY KEY (ID)
);

在我的POJO类中,如何使用getter和setter方法编写enum列以及接受用户输入的值的参数化构造函数&我如何确保enum列的输入值必须是数据库中定义的值?

我正在使用Hibernate .

如果需要其他信息,请与我们联系 .

1 回答

  • 1

    在JPA中,您可以在java类文件中使用它:

    @Enumerated(EnumType.STRING)
    @Column(name = "status")
    private StatusEnum status = StatusEnum.DRAFT;
    
    public StatusEnum getStatus() {
        return status;
    }
    
    public void setStatus(StatusEnum status) {
        this.status = status;
    }
    

    StatusEnum:

    public enum StatusEnum {
        DRAFT, SENT
    }
    

相关问题