【问题标题】:Store enum value in Object Box with generic mapper使用通用映射器将枚举值存储在对象框中
【发布时间】:2020-06-08 13:08:31
【问题描述】:

我最近加入了一个使用对象框的项目。

我阅读了文档,看起来当我尝试将枚举值存储在对象框 (https://docs.objectbox.io/advanced/custom-types#convert-annotation-and-property-converter) 中时,我必须一直编写转换器。

不幸的是,为不同的枚举编写所有时间相似的代码看起来真的很乏味。有没有简单的方法来编写一些通用映射器?即使它会违反不使用枚举案例名称的要求?

【问题讨论】:

    标签: kotlin generics enums objectbox


    【解决方案1】:

    通用映射器应该易于编写——至少在一个方向上;例如有一个这样的接口StableValue

    interface StableValue {
        int getStableValue();
    }
    

    那么你应该可以写一个通用转换器了。

    实际上,我会把它带到团队讨论如何将它集成到 ObjectBox 中......

    【讨论】:

    • 所以解决方案是拥有所有枚举类都应该继承的接口。我看清了存储部分,但看不到从数据库 int 值转换为特定枚举类值。
    • 是的,这样就解决了一半。如果你有很多转换器,它可能是一个起点。顺便说一句,您也可以将所有转换器放在一个文件中。
    • 我不希望将所有转换器放在一个文件中,特别是对于多模块项目
    猜你喜欢
    • 2012-05-05
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多