Skip to content

DynamoDB-backed Spring Boot service for Entity A/B/C (Spring Boot 3.5.7, Java 21) - #1

Open
bolo-van wants to merge 2 commits into
masterfrom
codex/create-spring-boot-app-with-dynamodb-integration
Open

DynamoDB-backed Spring Boot service for Entity A/B/C (Spring Boot 3.5.7, Java 21)#1
bolo-van wants to merge 2 commits into
masterfrom
codex/create-spring-boot-app-with-dynamodb-integration

Conversation

@bolo-van

@bolo-van bolo-van commented Feb 2, 2026

Copy link
Copy Markdown
Owner

Motivation

  • Provide a production-ready Spring Boot service (Java 21, Spring Boot 3.5.7) that stores and fetches three distinct entity types in AWS DynamoDB, modeled as separate tables because the entities have different attributes and access patterns.
  • Replace the previous H2/JPA/Thymeleaf demo with a DynamoDB-based persistence layer to allow independent capacity/TTL/indexing per entity.
  • Expose simple JSON REST APIs for creating and fetching each entity to support easy integration and testing.
  • No AGENTS skills were required or used for this change.

Description

  • Upgraded the build to Spring Boot 3.5.7 and added a Java toolchain for Java 21, plus AWS SDK v2 DynamoDB and the DynamoDB Enhanced client in build.gradle.
  • Added DynamoDB configuration beans in DynamoDbConfig and table name binding in DynamoDbTableProperties, and added application.properties keys for region, table names, and optional endpoint.
  • Implemented DynamoDB-backed domain models (EntityA, EntityB, EntityC) annotated for the Enhanced client, repository classes that wrap DynamoDbTable, services that handle creation/fetching, and REST controllers plus request DTOs for each entity (endpoints: POST /api/entity-a|b|c and GET /api/entity-a|b|c/{id}).
  • Removed H2 schema/data and Thymeleaf template files, and updated README.md with DynamoDB configuration and API usage notes (including the decision to use separate tables).

Testing

  • No automated tests were executed during this change; run ./gradlew test to run tests once added and ./gradlew bootRun to start the application for manual verification.

Codex Task

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant