我有一个使用领域驱动设计的小型应用程序,现在我想要一个带有翻译的实体。
我在互联网上读到域驱动设计的最佳实践是将翻译与模型分开,但我不知道该怎么做。
这是我所拥有的一个例子:
@Entity
class Product {
@Id
private String id;
private String name;
private String description;
private BigDecimal price;
private BigDecimal originalPrice;
...
}
@Service
class ProductService {
@Autowired
private ProductRepository productRepository;
public List<Product> getAll() {
return productRepository.findAll();
}
public List<Product> getById(String id) {
return productRepository.findById(id);
}
public List<Product> create(ProductDto productDto) {
Product product = new Product(
productDto.getName(),
productDto.getDescription(),
productDto.getPrice(),
productDto.getOriginalPrice()
);
return productRepository.save(product);
}
}
然后我的问题是:
想象一下,我正在接收产品 DTO 中的翻译,我想知道如何去做。
感谢并感谢您的帮助。