gpt4 book ai didi

java - 我是否仍然应该在生产代码中使用 JAXB 对象中的枚举?

转载 作者:行者123 更新时间:2023-12-02 09:06:02 26 4
gpt4 key购买 nike

我们有一个项目,其中 JAXB 对象与生产代码分离。我们在生产代码中创建一个实体(基于 JAXB 对象)。这些 JAXB 对象也会自动生成枚举。我应该怎么办?我是否仍然应该使用这些 JAXB 枚举或在生产代码中创建一个单独的枚举?会不会太贵了?

最佳答案

选项是:

  • 实现单独的实体模型,仅使用 JAXB 模式派生类作为 DTO,实现实体 -> DTO 转换器。
  • 直接使用架构派生类作为实体模型。

第一个选项更昂贵,但业务逻辑和外观层之间的分离更清晰。

第二种选择更便宜,但你完全是架构驱动的。

在业务逻辑中使用架构派生的枚举(或其他架构派生的类)使您处于第二种选择。如前所述,这既快速又便宜,而且效果相当好 - 只要您的业务逻辑完全由架构驱动。

但是如果你的业务实体有自己的含义,那就失败了。考虑以下问题:

  • 如果架构发生更改,会发生什么情况?
  • 如果您需要并行支持多个架构版本怎么办?
  • 如果您需要支持其他传输 channel 格式而不仅仅是 XML,该怎么办?
  • 如果您需要向业务实体添加无法(轻松)自动生成的功能,该怎么办?

业务实体/数据类型和 DTO 之间的清晰分离有很大帮助。上述更改/要求只会影响一层,不会影响业务逻辑或以下层。

关于java - 我是否仍然应该在生产代码中使用 JAXB 对象中的枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29763694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com