When you need a simpler or more convenient format for some of the data to display in JSPs
上面是从help.hybris.com摘录出来的原话,解释为什么我们需要DTO.
简单来说,就是因为Service Layer定义的model格式和UI需要的格式不是完全一样,如果UI直接消费Service Layer的model,代码写起来非常难看,而且会产生UI layer和service layer的强耦合。

更general地说,可以把DTO看成SADL的实现方式之一,处于BO(service layer) 和UI layer之间, 作为UI(consumer layer)消费Service layer的桥梁:

Hybris的DTO通常以data.java结尾,在我安装的6.5.0.0.23546这一版本里一共有445个DTO:

一个DTO例子:

在CRM Genil layer的实现里,虽然没有明文提出DTO的概念,但是从Genil layer这些方法的signature能看出这种DTO的思路其实也是蕴含在其中的:把数据从genil layer的format CRMT_PRODIL_DATA转换成UI layer的COMT_PRODUCT_MAINTAIN_UI.

CL_CRM_PRODIL_LONGTEXT

SAP Cloud for Customer Transformation Object

A transformed object provides consumer-friendly services across multiple business objects and their already existing functionality. A transformed object is used if a view on multiple business objects is required in the representation of a business object (for example, because the using application requires a business object).
Transformed objects are instantiated at run-time and do not have their own persistence – they rely on the persistence of the underlying business objects.

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

SAP SADL和SAP Hybris DTO, 以及SAP C4C的transformation object相关推荐

  1. SAP Commerce Cloud(原Hybris)和SAP Cloud for Customer(C4C)的SQL trace工具

    Hybris 用法和ABAP的ST05完全一样: 在UI做一个搜索: 从trace文件里也能看出后台搜索用的DB表是USERS: C4C C4C因为是cloud system,即使customer的a ...

  2. SAP 电商云 Spartacus UI 同 SAP Customer Data Cloud 的集成

    SAP Customer Data Cloud 允许您启用自定义注册和登录,还可以管理用户配置文件和 consent 信息. 要将 SAP Customer Data Cloud 与 Spartacu ...

  3. sap可以指定应用服务器,SAP扫盲系列之一:什么是SAP系统和应用服务器

    Jerry Wang,2007年加入SAP成都研究院工作至今,至今为止有13年的ABAP开发经验,SAP社区导师,SAP中国技术大使. SAP Netweaver Application Server ...

  4. sap 用户权限表_干货丨SAP系统的RPA实施技巧

    SAP SAP(System Applications and Products)是SAP公司的产品--企业管理解决方案的软件名称. SAP是其ERP(Enterprise-Wide Resource ...

  5. SAP UI5 应用开发教程之六十 - SAP UI5 地图控件的一些高级用法试读版

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...

  6. SAP UI5 初学者教程之十九 - SAP UI5 数据类型和复杂的数据绑定

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 ...

  7. SAP UI5 应用开发教程之三十三 - SAP UI5 应用的响应式布局特性(Responsiveness)试读版

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...

  8. SAP UI5 应用开发教程之三十一 - SAP UI5 的路由历史和路由回退(Routing back and history)试读版

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...

  9. SAP UI5 应用开发教程之三十 - SAP UI5 的路由过程中进行参数传递试读版

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...

最新文章

  1. vue中弹窗input框聚焦_Vue 中如何让 input 聚焦?(包含视频讲解)
  2. 让ERP downloaded product的description能够在CRM被修改
  3. 用csc命令行手动编译cs文件
  4. websocket 学习--简单使用,nodejs搭建websocket服务器,到模拟股票,到实现聊天室
  5. 1.9 编程基础之顺序查找 11 连续出现的字符 python
  6. const iterator 和const_iterator的区别
  7. Android 8.0 Settings新添加的重写getMetricsCategory
  8. php等待参数跳转,Thinkphp页面跳转设置跳转等待时间的操作
  9. js实现倒计时的小例子
  10. 常用的HTML5和CSS3标签及用法(入门篇)
  11. 航大之星礼仪大赛结束,欣赏现场抓图。
  12. Linux中关于API函数与系统调用
  13. MIDI 文件格式解析举例
  14. 好用的文献论文管理软件 EndNote X 9.3.3 Mac版
  15. 如何管理小米路由器后台
  16. 【读论文】基于深度学习的铁路道岔转辙机故障诊断(2INTRO)
  17. 随身Q代理服务器大升级
  18. HDU-1253-胜利大逃亡
  19. 君莫笑系列视频学习(5)(终)
  20. 大学十年__献给计算机专业的所有学子

热门文章

  1. java中包命名常见规则
  2. 【剑指offer】二叉树的深度_solution2
  3. 微服务 第六章 springboot 通过Spring-data-jpa 配置Oracle数据源(简单步骤)
  4. CNN中各种各样的卷积
  5. CSS position绝对定位absolute relative
  6. MVVM Template
  7. 只使用了符号的Ruby程序
  8. Django从理论到实战(part51)--User模型
  9. R语言观察日志(part1)--subset函数
  10. 走近分形与混沌(part11)--一个新概念、新理论的诞生往往伴随着新常数的出现