Lombok: [功能] @FromEnum(Enum.class)

创建于 2020-03-15  ·  3评论  ·  资料来源: projectlombok/lombok

功能描述
基于枚举的字段生成类
这个羽毛请求出现在我在StackOverflow 中的问题中

基本上,该功能将允许使用枚举类中的字段创建一个类,如果设置了@Data@Setter@Getters ,则将这些字段标记为 privet 并为它们生成 setter 和 getter

使用代码原型:
定义

public enum JwtFields {
    userId,
    country,
    sessionId,
    anyOtherField
}
@FromEnum(JwtFields.class)
<strong i="19">@Data</strong>
public class JwtDeserialised {
    private String someAdditionalCutomFieldIfIwant
}

用法:

String userId = jwtDeserialisedInstance.getUserId(); 
String anyOtherField = jwtDeserialisedInstance.getAnyOtherField();
String someAdditionalCutomFieldIfIwant = jwtDeserialisedInstance.GetSomeAdditionalCutomFieldIfIwant();

目标听众
任何使用枚举作为键以避免错误输入字符串的人,稍后需要将该枚举反序列化为具有集合和获取的适当类。

最有用的评论

为什么不采取相反的方向:在类中定义您的字段并使用@FieldNameConstants(asEnum = true)来生成您的枚举?

所有3条评论

为什么不采取相反的方向:在类中定义您的字段并使用@FieldNameConstants(asEnum = true)来生成您的枚举?

我们已经实现了这一点,但正如@janrieke所示,在相反的方向:创建类(而不是命名“字段”的枚举)。

另请注意,您希望它实现的方式需要分辨率,即是一个极其复杂的功能。

感谢你们! 惊人的! 另一种方式也非常适合我!
没有在文档中发现它,但现在在实验中发现了它! 非常好的功能,绝对值得在主要功能中进行实验!

此页面是否有帮助?
0 / 5 - 0 等级