2016-06-09 42 views
2

我是Hybris的新手,对它的扩展结构有点困惑。 每当我们创建任何扩展,它包含两个XML文件: 个-beans.xml和-spring.xml为什么在Hybris中有两个单独的xml文件 - <extension> -beans.xml和<extension> -spring.xml?

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

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

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

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

请对此提供一些说明。 谢谢。

+0

什么**版本的** [弹簧(http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/xsd-config.html )你在一起工作吗? –

+0

它是3.1和Hybris版本是5.7.x. – AppleBud

+0

来自我在第一条评论中提供的链接:* Spring 2.0的新的基于XML Schema的配置解决了这个问题。 元素仍然存在,如果您愿意,您可以继续使用元素继续编写完全相同的Spring XML配置样式。* –

回答

6

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

<extension>-beans.xml -

我们声明方式创建的数据对象,例如用于在用作用于码生成输入的XML文件定义豆类和枚举。主要优点是你可以合并多个扩展的属性

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

<bean class="de.hybris.platform.test.data.CustomerData"> 
    <description>Data object representing CustomerData</description> 
    <property name="name" type="String"/> 
    <property name="email" type="String"/> 
    <property name="phone" type="String" /> 
</bean> 

转换器/ Populators被用来填充DTO。

<extension>-spring.xml -

这个文件是用来定义类豆类(如外墙,服务,刀,策略等)。

<bean id="defaultProductService" class="de.com.test.DefaultProductService"/>

+0

可以告诉我在哪里可以找到文件 -spring.xml? –

+0

-spring.xml和 -beans.xml都在扩展的资源文件夹中 –

相关问题