Supported Client Libraries
Supported Operations
Operations | Method Supported |
---|
Insert | Spring Framework - org.springframework.data.repository.CrudRepository.save
- org.springframework.data.repository.CrudRepository.saveAll
Social SignIn - org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.save
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.saveAll
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.save
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.saveAll
|
Select | Spring Framework - org.springframework.data.repository.CrudRepository.existsById
- org.springframework.data.repository.CrudRepository.findAll
- org.springframework.data.repository.CrudRepository.findById
- org.springframework.data.repository.PagingAndSortingRepository.findAll
Social SignIn - org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.existsById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.findAll
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.findById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.existsById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.findById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.findAll
|
Delete | Spring Framework - org.springframework.data.repository.CrudRepository.delete
- org.springframework.data.repository.CrudRepository.deleteById
- org.springframework.data.repository.CrudRepository.deleteAllById
- org.springframework.data.repository.CrudRepository.deleteAll
Social SignIn - org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.delete
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.deleteById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.deleteAllById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBCrudRepository.deleteAll
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.delete
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.deleteById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.deleteAllById
- org.socialsignin.spring.data.dynamodb.repository.DynamoDBPagingAndSortingRepository.deleteAll
|
Objects
Icon | Description |
---|
| Java_DynamoDB_Client |
| Java_DynamoDB_Table |
| Java_Unknown_DynamoDB_Client |
| Java_Unknown_DynamoDB_Table |
Links
Links are created for transaction and function point needs:
Link type | Source and destination of link | Methods Supported |
---|
parentLink | Between DynamoDB client object and DynamoDB table |
|
useInsertLink | Between the caller Java Method objects and DynamoDB client | |
useSelectLink | - existsById
- findById
- findAll
|
useDeleteLink | - delete
- deleteById
- deleteAll
- deleteAllById
|
What results can you expect?
Once the analysis/snapshot generation is completed, you can view the results in the normal manner (for example via CAST Enlighten). Some examples are shown below.
DynamoDB Client with Java Configuration
DynamoDB Client
@Configuration
@EnableDynamoDBRepositories(basePackages = "com.javasampleapproach.dynamodb.repo")
public class DynamoDBConfig {
@Value("${amazon.dynamodb.endpoint}")
private String dBEndpoint;
@Value("${amazon.aws.accesskey}")
private String accessKey;
@Value("${amazon.aws.secretkey}")
private String secretKey;
@Bean
public AmazonDynamoDB amazonDynamoDB() {
AmazonDynamoDB dynamoDB = new AmazonDynamoDBClient(amazonAWSCredentials());
if (!StringUtils.isNullOrEmpty(dBEndpoint)) {
dynamoDB.setEndpoint(dBEndpoint);
}
return dynamoDB;
}
@Bean
public AWSCredentials amazonAWSCredentials() {
return new BasicAWSCredentials(accessKey, secretKey);
}
}

Select Operation
Select Operation
public String findAll() {
String result = "";
Iterable<Customer> customers = repository.findAll();
for (Customer cust : customers) {
result += cust.toString() + "<br>";
}
return result;
}

Insert Operation
Insert Operation
public String save() {
// save a single Customer
repository.save(new Customer("JSA-1", "Jack", "Smith"));
}

Delete Operation
Delete Operation
public String delete() {
repository.delete(new Customer("JSA-1", "Jack", "Smith"));
repository.deleteAll();
return "Done";
}

Evolution
Limitations
- Client is created as unknown, if the name is not retrieved from the properties file or if the name could not be resolved.