Map enum as string with jpa

Use the @Enumerated(EnumType.STRING) annotation:

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;

@Entity
public class ComparisonReport implements Serializable {

  public static final String TABLE_NAME = "T_COMPARISON_REPORT";
  public static final String COLUMN_TRIGGER_TYPE = "TRIGGER_TYPE";

  @Column(name = COLUMN_TRIGGER_TYPE)
  @Enumerated(EnumType.STRING)
  private ReportTriggerType triggerType;

 //others ignored for brevity
}

The enum itself looks something the following

public enum ReportTriggerType {
    MANUAL("MANUAL"),
    AUTOMATIC("AUTOMATIC");

    private String value;

    ReportTriggerType(String source) {
      this.value = source;
    }

    public String getValue() {
      return value;
    }
  }

Shared with from Codever. 👉 Use the Copy to mine functionality to copy this snippet to your own personal collection and easy manage your code snippets.

Codever is open source on Github ⭐🙏

Subscribe to our newsletter for more code resources and news

Adrian Matei (aka adixchen)

Adrian Matei (aka adixchen)
Life force expressing itself as a coding capable human being

routerLink with query params in Angular html template

routerLink with query params in Angular html template code snippet Continue reading