• JPA中 @Enumerated 注解


    背景

    在使用JPA的过程中,我们在使用数据库存储类型数据时,当类型较少,使用枚举常量作为类型进行存储,需要用到 @Enumerated 注解。

    @Enumerated源码定义

    @Target({METHOD, FIELD}) 
    @Retention(RUNTIME)
    public @interface Enumerated {
    
        /** (Optional) The type used in mapping an enum type. */
        EnumType value() default ORDINAL;
    }
    

    其中, EnumType 枚举字段

    public enum EnumType {
        ORDINAL,//按照枚举的下标,使用Enum类型实例在Enum中声明的顺序,通过这个序号来将Enum类型字段映射成int类型来存储;
        STRING;//按照枚举的名字,使用Enum类型实例中的name属性来完成映射,将Enum类型映射成字符串的方式
        private EnumType() {
        }
    }
    
    

    使用

    1、默认情况下
    当不使用任何注解的时候,默认情况下是使用ordinal属性,序号是从0开始的;

    2、@Enumerated(EnumType.ORDINAL)
    使用定义枚举时的下标;

    3、@Enumerated(EnumType.STRING)
    使用定义枚举时的枚举常量的字符串。

  • 相关阅读:
    project
    类欧几里得算法
    还不熟悉的内容
    Hall定理
    FWT学习笔记
    最小树形图
    BZOJ 3027 [Ceoi2004]Sweet
    多项式除法
    VUE 计算属性和侦听器
    VUE 模板语法
  • 原文地址:https://www.cnblogs.com/hnxbp/p/15020990.html
Copyright © 2020-2023  润新知