将application.yml中的地图列表注入到服务中。

56 浏览
0 Comments

将application.yml中的地图列表注入到服务中。

我正试图将应用程序.yml配置文件中的一系列映射注入到我的Spring Boot服务中。这是application.yml中的配置:\ndevoxx:\n cfpApis:\n -\n url: http://cfp.devoxx.be/api/conferences\n youtubeChannelId: UCCBVCTuk6uJrN3iFV_3vurg\n -\n url: http://cfp.devoxx.fr/api/conferences\n -\n url: http://cfp.devoxx.ma/api/conferences\n youtubeChannelId: UC6vfGtsJr5RoBQBcHg24XQw\n -\n url: http://cfp.devoxx.co.uk/api/conferences\n -\n url: http://cfp.devoxx.pl/api/conferences\n这是我的服务中的属性:\n@Value(\"devoxx.cfpApis\")\nList> cfpApis\n但是肯定有问题,因为当我尝试运行我的应用程序时,我得到以下异常:\njava.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [java.util.Map]: no matching editors or conversion strategy found\n对我做错了什么有任何想法吗?\nFYI,我正在尝试将一个Grails 3项目迁移到一个纯Spring Boot项目,这个配置在Grails 3中可以工作,但是Grails有自己的YAML处理器。

0
0 Comments

问题的出现原因:在这段内容中,作者提到了一个问题,即如何将应用程序配置文件(application.yml)中的一组映射列表注入到服务中。作者并没有明确提到问题的具体原因,但可以推断出作者在开发过程中遇到了需要将配置文件中的映射列表注入到服务中的需求。

解决方法:根据作者的描述,作者通过在服务类上标记注解(prefix="devoxx")来解决这个问题。在服务类中,作者声明了一个名为cfpApis的属性,其类型为List>。通过这种方式,作者成功地将配置文件中的映射列表注入到了服务中。

以下是整理后的文章:

在开发过程中,我们经常需要将应用程序配置文件中的数据注入到服务中。在本文中,我们将讨论一个具体的问题,即如何将应用程序配置文件(application.yml)中的一组映射列表注入到服务中。

通过阅读下面的内容,我们可以了解到解决这个问题的具体方法。首先,我们需要在服务类上添加注解(prefix="devoxx")。这个注解的作用是告诉程序,我们希望将配置文件中以"devoxx"为前缀的属性注入到这个服务中。

在服务类中,我们需要声明一个名为cfpApis的属性,其类型为List>。通过这样的声明,我们告诉程序,我们希望将配置文件中的映射列表注入到这个属性中。

通过以上的步骤,我们成功地将应用程序配置文件中的一组映射列表注入到了服务中。这样,我们就可以在服务中使用这些配置数据,实现我们的业务逻辑。

总结起来,通过在服务类上添加注解,并声明一个对应的属性,我们可以轻松地将应用程序配置文件中的数据注入到服务中。这种方法使得我们的代码更加灵活和可维护,提高了开发效率。

希望本文对大家理解如何将应用程序配置文件中的数据注入到服务中有所帮助。如果大家有任何疑问或者建议,请随时提出。谢谢!

0