在上一教程中,我们看到了如何使用Java创建AWS Lambda函数,并传递了String作为输入,还返回了String作为Output。如果您是第一次创建lambda函数,我建议先阅读该教程。
在本教程中,我们将看到如何传递Java普通的旧Java对象(POJO)作为输入并将其返回为Output。
在这里,我们将实现RequestHandler接口。
package com.blogspot.javasolutionsguide;import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.blogspot.javasolutionsguide.input.Input;
import com.blogspot.javasolutionsguide.output.Output;public class HelloWorldWithPojoInputOutput implements RequestHandler{@Overridepublic Output handleRequest(Input input, Context context) {String message = String.format("Hello %s%s.", input.getName() , " " + "from" + context.getFunctionName());return new Output(message);}}
这是我们的输入和输出类。
package com.blogspot.javasolutionsguide.input;public class Input {private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}
}package com.blogspot.javasolutionsguide.output;public class Output {private String message;public Output(String message) {this.message = message;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}}
要将代码上传到AWS控制台,请按照上一教程中的步骤进行操作。
将您的jar上传到AWS lambda控制台后,单击“选择测试事件”,然后“配置测试事件”。
输入事件名称为“ HelloWorldWithPojoInputOutput”并替换以下内容
{"key1": "value1","key2": "value2","key3": "value3"
}
具有以下内容:
{"name" : "Gaurav Bhardwaj"
}
然后点击创建按钮。
现在单击“测试”按钮,您应该会看到lambda函数已成功执行,并显示消息“ HelloWorld的Hello Hello Gaurav Bhardwaj”,这是我们的lambda函数返回的输出。
您可以在GitHub中找到本教程的所有代码
摘要
因此,在本教程中,我们看到了如何将POJO传递给lambda函数,以及如何从lambda函数返回POJO。
翻译自: https://www.javacodegeeks.com/2020/03/aws-lambda-function-with-java-pojo-as-input-output-example.html