SWF 基本知识 - 适用于 Java 的 Amazon SDK 1.x
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

适用于 Java 的 Amazon SDK 1.x 于 2025 年 12 月 31 end-of-support 日达到。我们建议您迁移到 Amazon SDK for Java 2.x 以继续获得新功能、可用性改进和安全更新。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SWF 基本知识

这些是通过 Amazon SWF 使用适用于 Java 的 Amazon SDK的一般模式。这意味着它主要用于参考。有关更完整的介绍性教程,请参阅构建简单 Amazon SWF 应用程序

依赖项

基本 Amazon SWF 应用程序将需要适用于 Java 的 Amazon SDK附带的以下依赖项:

  • aws-java-sdk-1.12.*.jar

  • commons-logging-1.2.*.jar

  • httpclient-4.3.*.jar

  • httpcore-4.3.*.jar

  • jackson-annotations-2.12.*.jar

  • jackson-core-2.12.*.jar

  • jackson-databind-2.12.*.jar

  • joda-time-2.8.*.jar

注意

虽然这些程序包的版本号将因您拥有的 SDK 版本而异,但 SDK 附带的版本已经过兼容性测试,并且您应使用这些版本。

适用于 Java 的 Amazon Flow Framework 应用程序需要其他设置 其他依赖项。有关使用框架的更多信息,请参阅《Amazon Flow Framework for Java Developer Guide》。

导入

通常,您可以将以下导入用于代码开发:

import com.amazonaws.services.simpleworkflow.AmazonSimpleWorkflowClientBuilder; import com.amazonaws.services.simpleworkflow.model.*;

不过,好的做法是仅导入您所需的类。您可能最终会在 com.amazonaws.services.simpleworkflow.model 工作区中指定特定的类:

import com.amazonaws.services.simpleworkflow.model.PollForActivityTaskRequest; import com.amazonaws.services.simpleworkflow.model.RespondActivityTaskCompletedRequest; import com.amazonaws.services.simpleworkflow.model.RespondActivityTaskFailedRequest; import com.amazonaws.services.simpleworkflow.model.TaskList;

如果您使用适用于 Java 的 Amazon Flow Framework,则将从 com.amazonaws.services.simpleworkflow.flow 工作区导入类。例如:

import com.amazonaws.services.simpleworkflow.AmazonSimpleWorkflow; import com.amazonaws.services.simpleworkflow.flow.ActivityWorker;
注意

除了适用于 Java 的 Amazon SDK 的基本要求外,适用于 Java 的 Amazon Flow Framework 还有额外要求。有关更多信息,请参阅《Amazon Flow Framework for Java Developer Guide》。

使用 SWF 客户端类

您通过 Amazon SWFAmazonSimpleWorkflowClientAmazonSimpleWorkflowAsyncClient 类与 进行基本交互。二者之间的主要差异是,\*AsyncClient 类返回 Future 对象以进行并发 (异步) 编程。

AmazonSimpleWorkflowClient swf = AmazonSimpleWorkflowClientBuilder.defaultClient();