何时在Hybris中的* -spring.xml和* -beans.xml上定义bean?他们之间有什么区别?
答案 0 :(得分:6)
E.g。您定义一个新实体颜色以将其存储在您的数据库中。
要定义诸如ColorDao或ColorService之类的spring bean,您将使用 yourextension-spring.xml 。
在ColorDao或ColorService中,您使用模型类。在这种情况下,它将是 ColorModel ,但是在编写ColorFacade时,您无法将模型类暴露给外部世界,您需要将其转换为某些DTO。所以你去 yourextension-beans.xml 并在那里创建ColorData类。
ColorData是在 ant all 期间从 yourextension-beans.xml 生成的。
答案 1 :(得分:1)
Hybris遵循分层架构,我们以模型的形式从持久层(数据库)获取数据,并以DTO(数据传输对象)的形式将结果发送到表示层。
个-beans.xml
我们以声明方式创建Data对象,例如,在用作代码生成输入的xml文件中定义bean和枚举。主要优点是您可以将属性合并到多个扩展名上。
简而言之,为了创建DTO,我们使用-beans.xml,然后在控制器中使用它来在jsp中显示结果。
<bean class="de.hybris.platform.test.data.ProductData">
<description>Data object representing ProductData</description>
<property name="code" type="Long"/>
<property name="name" type="String"/>
<property name="price" type="Double"/>
</bean>
正在使用转换器/填充程序来填充DTO。
-spring.xml
此文件用于定义您的类bean(如外观,服务,dao,策略等)。
<bean id="defaultProductService" class="de.com.test.DefaultProductService"/>
* spring.xml文件中声明的Bean不会自动生成。