-
Notifications
You must be signed in to change notification settings - Fork 0
Type Error 해결하기 ‐ @DynamoDBTyped
Lucy Oh edited this page Aug 10, 2023
·
1 revision
Written By Jisoo Oh
테스트 데이터 저장과정에서 다음과 같은 에러가 발생함
- 데이터 attribute 에는 List와 객체가 섞여있었는데 DynamoDB에 저장할 때 타입 에러가 나는 것이라고 생각함.
not supported; requires @DynamoDBTyped or @DynamoDBTypeConverted:
com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMappingException
public class User extends BaseEntity {
...
@DynamoDBAttribute
@Getter
@Setter
private List<String> followingUserHandles = new ArrayList<>();
@DynamoDBAttribute
@Getter
@Setter
private List<String> followerUserHandles = new ArrayList<>();
...
}
@DynamoDBTyped
애노테이션을 사용해서 DB에 저장될 때 Type을 명시할 수 있도록 작성해주었음!
(아래는 list이기 때문에 L Type을 사용해 주었으나, 다른 타입들은 다음과 같이 타입을 작성해주기!)
- Object to M
- Set to L
- UUID to B
- Enum to S
- Boolean to N
- Boolean to BOOL
public class User extends BaseEntity {
...
@DynamoDBAttribute
@Getter
@Setter
@DynamoDBTyped(DynamoDBAttributeType.L)
private List<String> followingUserHandles = new ArrayList<>();
@DynamoDBAttribute
@Getter
@Setter
@DynamoDBTyped(DynamoDBAttributeType.L)
private List<String> followerUserHandles = new ArrayList<>();
...
}