Я хочу избежать использования аннотаций DynamoDB в классе, но по-прежнему иметь возможность использовать преобразователь для записи и чтения из DynamoDB. Я использую Java SDK для чтения и записи из DynamoDB (используя предоставленный файл DynamoDBMapper
.
Скажи, что у меня есть это Model.java
@DynamoDBTable(tableName="Model")
public class Model {
private Integer id;
private String title;
@DynamoDBHashKey(attributeName="ModelId")
public Integer getId() { return id;}
public void setId(Integer id) {this.id = id;}
@DynamoDBAttribute(attributeName="Title")
public String getTitle() {return title; }
public void setTitle(String title) { this.title = title; }
}
Я бы написал ему как обычно
Model model = new Model();
//... random information
DynamoDBMapper mapper = new DynamoDBMapper(client);
mapper.save(model);
Это нормально, но мой объект домена замусорен специфическими аннотациями DynamoDB. Есть ли способ вместо этого иметь класс, который обертывает объект домена (без каких-либо аннотаций). В приведенном ниже случае я бы искал эффективную реализацию DynamoDBModelWrapper
public class Model {
private Integer id;
private String title;
public Integer getId() { return id;}
public void setId(Integer id) {this.id = id;}
public String getTitle() {return title; }
public void setTitle(String title) { this.title = title; }
}
public class DynamoDBModelWrapper extends Model { ... }
Model model = new Model();
//... random information
DynamoDBMapper mapper = new DynamoDBMapper(client);
mapper.save(DyanamoDBModelWrapper(model));
Здоровья и спасибо