Spring Cloud Dataflow - 处理任务中的参数
Posted
技术标签:
【中文标题】Spring Cloud Dataflow - 处理任务中的参数【英文标题】:Spring Cloud Dataflow - handling argument in Task 【发布时间】:2019-12-15 01:57:32 【问题描述】:我想在 Spring Cloud Dataflow 中启动任务时将对象的 ID 传递给变量。我知道它可以用参数或参数来完成,但我不知道如何在 Java 代码中处理这些参数或参数,所以我可以接管这个值。您能否说明如何做到这一点?
【问题讨论】:
【参考方案1】:在 Spring Cloud Data Flow 的上下文中,您可以将 arguments
或 properties
传递给您的任务应用程序。
您为 Spring Cloud Task 应用程序传递的 参数 是任务应用程序本身的命令行参数。您需要将参数限定为应用程序的命令行参数。
您为 Spring Cloud Task 应用程序传递的 属性 是应用程序配置属性或任务部署程序属性。他们必须使用前缀app
、deployer
或scheduler
。
例如,对于开箱即用的timestamp
任务应用程序,您可以在以下示例中看到如何使用参数和属性:
dataflow:>task create a1 --definition "timestamp"
使用参数和属性启动任务
dataflow:>task launch a1 --arguments "--spring.main.banner-mode=off" --properties "app.timestamp.format=YYYY/DD/MM"
在上述情况下,命令行参数--spring.main.banner-mode=off
被传递给时间戳应用程序,而时间戳应用程序的属性format
被传递给任务应用程序。
【讨论】:
如果我们可以通过编程方式而不是手动传递它,有什么办法吗?以上是关于Spring Cloud Dataflow - 处理任务中的参数的主要内容,如果未能解决你的问题,请参考以下文章
需要有关如何在多个专用服务器中创建部署 spring-cloud-dataflow 应用程序以创建流的建议
Spring Cloud Dataflow - 处理任务中的参数