До сих пор я писал лямбда-функцию на Python для всех своих AWS проектов . В Python это просто, просто импортируйте модуль boto3 и начните кодирование. Все немного по-другому, когда вы пишете лямбда-обработчики на Java. Давайте рассмотрим и посмотрим, как вы можете написать простой лямбда-обработчик HelloWorld на java. Я запланировал несколько практических проектов, которые я собираюсь написать на Java. Поэтому я решил сделать сообщение Hello World, прежде чем мы погрузимся в сложные обработчики. Не стесняйтесь следить за мной в twitter для предстоящих обновлений.
Для реализации обработчика мы будем использовать Maven, Eclipse и AWS SDK для Java. Ниже приведены версии:
Java: 1.8
Затмение: Версия: 2020-06 (4.16.0)
ПАКЕТ SDK AWS: 2.14.11
Maven: 3.6.3 (Входит в комплект eclipse)
Для начала создайте новый пустой проект maven в eclipse. Перейдите в раздел Файл-> Создать -> Проект Maven. В диалоговом окне “Новый проект”. выберите “создать простой проект” и нажмите “Далее”. На следующем экране. добавьте соответствующую информацию о проекте и нажмите “Готово”. Например:
Теперь ваш проект создан. Открыть pom.xml и добавьте следующий код.
4.0.0net.rajanpanchallambda-java-demo1Lambda-Java-DemoHelloWorld Lambda handler in java1.81.82.14.11software.amazon.awssdkbom${aws.java.sdk.version}pomimportcom.amazonawsaws-lambda-java-core1.2.0com.google.code.gsongson2.8.6org.apache.maven.pluginsmaven-compiler-plugin${maven.compiler.source}
${maven.compiler.target}org.apache.maven.pluginsmaven-shade-plugin3.2.4packageshade
Мы устанавливаем некоторые свойства в теге <свойства> , такие как версия AWS SDK и версия Java. Мы добавляем зависимость AWS SDK и зависимость от лямбда-ядра с желаемой версией. Добавлена зависимость Google JSON для преобразования между JSON и объектом Java и наоборот. В плагинах мы определяем плагин компилятора maven для компиляции кода и еще один важный плагин, называемый maven-shade-plugin . Этот плагин помогает создать банку жира он же Uber jar . Этот jar будет содержать все зависимости, необходимые для успешного выполнения лямбда-функции.
Теперь давайте создадим обработчик.
package net.rajanpanchal.handlers;
import java.util.Map;
import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.LambdaLogger;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class HelloWorldHandler implements RequestHandler
Здесь мы реализуем Обработчик запросов , который будет принимать Карту из строки и выводит a Строка ответ. Обработчик делает не так уж много. Просто записываю кое-что из контекста и событие и в ответ он отправляет 200 OK строку. После этого щелкните правой кнопкой мыши на проекте, перейдите в раздел “Запуск от имени” и нажмите “Сборка Maven”. Откроется окно конфигурации. В поле “Цели” введите пакет и нажмите “Выполнить”. Сборка должна быть успешной и создаст жирную банку в папке target .
Теперь перейдите в консоль AWS и создайте новую функцию Lambda с Java 8 в качестве среды выполнения и загрузите эту банку из раздела Код функции . В основных настройках вы должны указать имя метода package.class:: в текстовом поле обработчика. Чтобы проверить эту лямбду, создайте тестовое событие и выполните тест.