为什么在Hybris中有两个单独的xml文件 – -beans.xml& -spring.xml?

我是Hybris的新手,并且对它的扩展结构感到困惑。 每当我们创建任何扩展时,它都包含两个XML文件:-beans.xml和-spring.xml

-beans.xml文件包含bean及其属性的定义,或者换句话说,DTO。

-spring.xml还包含一些bean及其属性的定义。

这是我到目前为止所理解的。 如果我错了,请纠正我。

当我们可以在spring.xml定义bean时,为什么还需要另一个XML文件“ beans.xml ”?

请提供一些澄清。 谢谢。

正如我们所知,Hybris遵循分层架构,我们以模型的forms从持久层(数据库)获取数据,并以DTO(数据传输对象)的forms将结果发送到表示层。

-beans.xml

我们以声明方式创建Data对象,例如,在用作代码生成的输入的xml文件中定义bean和枚举。 主要优点是您可以在多个扩展上合并属性

简而言之,我们使用-beans.xml来创建DTO,然后在控制器中使用它来在jsp中显示结果。

  Data object representing CustomerData     

转换器/填充器正用于填充DTO。

-spring.xml

此文件用于定义类bean(如facade,service,dao,strategy等)。

通常,Hybris中的* beans.xml文件用于表示数据模型(如上所述)。 这些文件由平台读取,由此自动生成DTO。

在* spring.xml文件中声明的Bean不会自动生成。

https://wiki.hybris.com/display/release5/Generating+Beans+and+ Enum有更多相关信息。