2009-02-09 59 views
0

我正在使用典型服务 - dao设置的现有Java项目,其中只有Web应用程序可用。我的工作是在服务层之上添加web服务,但web服务有自己的功能分析和数据模型。资源的功能分析着重于不同服务方法中的可能性。根据良好实践的要求,我们使用了WSDL第一策略并为Web服务生成了JAXB绑定的Java类和SEI。部分实施了Web服务后,我们注意到数据模型之间有70%的匹配。这导致了编写转换器,该转换器采用web服务JAXB类并将它们映射到服务层类。WSDL首先用于现有服务层

Customer customer = new Customer(); 
customer.setName(wsCustomer.getName()); 
customer.setFirstName(wsCustomer.getFirstName(); 
.. 

这是一个非常明显的例子,其他一些映射更复杂一些。 任何人都可以提供他的最佳实践,经验,解决这种情况?

这些框架中的任何一个都有用吗? http://transmorph.sourceforge.net/wiki/index.php/Main_Page http://ezmorph.sourceforge.net/

请不要首先就WSDL和代码优先进行讨论。

回答

0

我认为真正的问题是......您将来会使用多少代码生成器,并且可以让它们生成您现在正在执行的操作。 如果您不关心工具的代码生成功能,或者它们可以适应您的需求,那么将所有内容都转换为当前的数据模型是一个不错的主意。

1

我在我的项目上遇到同样的问题。我为生成的对象创建了一个工厂并将其用于创建对象。

Customer customer = factory.createCustomer(wsCustomer); 

哪些隔离构造代码,而不改变生成的代码。

+0

好点,我们有这些工厂与创建方法的双向 – 2009-02-17 22:35:23