通过* -beans.xml定义DTO有什么好处?

2020-09-28 01:20发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


当我们使用 *-items.xml 声明类型时,目的很明确:我们采用DRY原理,并且从单一信息源中应用Java类和DB表。 但是 *-beans.xml 定义的目的是什么? 为什么我们不能像往常一样简单地声明常见的Java类?

---编辑---谢谢您的回答,但是得墨meter耳法则呢? 我的意思是,如果我有 complexObject.getFoo()。getBar()。getCountry(),我无法将其重构为 complexObject.getCountry(),而必须 几次 NPE 检查。 我也无法提供默认值,例如空集合。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


当我们使用 *-items.xml 声明类型时,目的很明确:我们采用DRY原理,并且从单一信息源中应用Java类和DB表。 但是 *-beans.xml 定义的目的是什么? 为什么我们不能像往常一样简单地声明常见的Java类?

---编辑---谢谢您的回答,但是得墨meter耳法则呢? 我的意思是,如果我有 complexObject.getFoo()。getBar()。getCountry(),我无法将其重构为 complexObject.getCountry(),而必须 几次 NPE 检查。 我也无法提供默认值,例如空集合。

付费偷看设置
发送
6条回答
骆驼绵羊
1楼 · 2020-09-28 01:45.采纳回答

至少您会获得相同的好处:能够以声明方式扩展模型,而无需更改原始源。

槿木_熙
2楼-- · 2020-09-28 01:31

此外,如果您想禁用扩展名,则无需清除为此扩展名添加的字段中的DTO

N-Moskvin
3楼-- · 2020-09-28 01:47

您好,

我能想到的一些优点是:

  1. 仅为所需的那些属性生成getter和setter,而无需修改任何(javabean)类。

  2. 由于文件是在编译期间生成的,因此无法使用"自定义"代码污染此bean。

  3. 如果在bean.xml中声明了代码库中的bean类,则它们比使用javabeans轻。

BR,
瑞莎

lukcy2020
4楼-- · 2020-09-28 01:46

但是IDE可以一键完成

Climb_Ma
5楼-- · 2020-09-28 01:44

您只需编写更少的代码。 样板代码如getter和setter会为您生成。

木偶小白
6楼-- · 2020-09-28 01:58

嗨,

我想那你就在春天。 这个豆可以在其他地方使用

一周热门 更多>