如何在春季将scala enum注入到bean中

时间:2019-04-17 16:23:47

标签: spring scala enums

我有一个scala项目,并且想要使用spring来构建/管理bean。在这个项目中,我需要将scala枚举列表注入到bean中。

object TestEnum extends Enumeration {
    type TestEnum = Value
    val TEST_1 = Value("test_1")  
    val TEST_2 = Value("test_2")  
    def makeQueryField(testEnum: TestEnum.Value, fieldQueryMapper:String): String = fieldQueryMapper + s" AS ${testEnum}"
}


class EnumComposite(id: String,
                    enums: Array[TestEnum.Value],
                    oneEnum: TestEnum.Value
                   ){
}

我知道如果使用Java,可以将枚举名称直接作为String注入:

<bean id = "enumComposite" class = "xxx.EnumComposite">
        <constructor-arg name = "id" value="enumComposite"/>
        <constructor-arg name = "oneEnum" value="TEST_1"/>
        <constructor-arg name = "enums" value="#{{
                'TEST_1',
                'TEST_2'
            }}"/>
</bean>

这种注入方式不适用于Scala枚举。有什么方法可以注入scala枚举吗?如果没有,是否有其他解决方案?

非常感谢!

0 个答案:

没有答案