+++ title = "アプリに table viewer を追加" weight = 300 +++ ## Table viewer をスタックに追加 `TableViewer` をスタックに追加するには、`~/CdkWorkshopStack.java` に次のコードでハイライトされている部分を追加します。 {{}} package com.myorg; import io.github.cdklabs.dynamotableviewer.TableViewer; import software.constructs.Construct; import software.amazon.awscdk.Stack; import software.amazon.awscdk.StackProps; import software.amazon.awscdk.services.apigateway.LambdaRestApi; import software.amazon.awscdk.services.lambda.Code; import software.amazon.awscdk.services.lambda.Function; import software.amazon.awscdk.services.lambda.Runtime; public class CdkWorkshopStack extends Stack { public CdkWorkshopStack(final Construct parent, final String id) { this(parent, id, null); } public CdkWorkshopStack(final Construct parent, final String id, final StackProps props) { super(parent, id, props); // Defines a new lambda resource final Function hello = Function.Builder.create(this, "HelloHandler") .runtime(Runtime.NODEJS_14_X) // execution environment .code(Code.fromAsset("lambda")) // code loaded from the "lambda" directory .handler("hello.handler") // file is "hello", function is "handler" .build(); // Defines our hitcounter resource final HitCounter helloWithCounter = new HitCounter(this, "HelloHitCounter", HitCounterProps.builder() .downstream(hello) .build()); // Defines an API Gateway REST API resource backed by our "hello" function LambdaRestApi.Builder.create(this, "Endpoint") .handler(helloWithCounter.getHandler()) .build(); // Defines a viewer for the HitCounts table TableViewer.Builder.create(this, "ViewerHitCount") .title("Hello Hits") .table(helloWithCounter.getTable()) .build(); } } {{}} コードの変更は完了です! お疲れさまでした。 これで、コードを保存して、エディタを終了することが出来ます。 --- 次のセクションでは、スタックをもう一度デプロイし、その結果を確認します。