@Entity
@Table(name = "t_info_student")
public class Material implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
@GenericGenerator(name = "idGenerator", strategy = "uuid")
@GeneratedValue(generator = "idGenerator")
@Column(updatable=false,name = "material_id")
private String id;//学生id
@Column(name = "name")
private String name;
@Enumerated(EnumType.ORDINAL)
@Column(name = "gender")
private Gender gender;
}
public class MaterialEnums {
public enum Gender{
男,女,保密;
}
}
这种情况下同步到数据库是数值型,查询时返回的是枚举的string
若想网数据库中存储(男、女、保密)则需要改数据库中的对应字段类型和注解@Enumerated(EnumType.ORDINAL)为@Enumerated(EnumType.STRING)
一般情况下使用@Enumerated(EnumType.ORDINAL),可以节省存储空间,查询时的效率数值型比varchar型要高