wso2数据源服务器 - 为新服务创建数据层

时间:2013-06-10 05:43:17

标签: wso2dss

似乎大多数WSO2 DSS文档都围绕着暴露现有数据源的用例。

从头开始创建新服务时,您是使用DSS实现新的CRUD数据访问层,还是使用基于标准java的方法(例如spring,hibernate等)来实现数据访问层?两种方法(DSS与Java)对新服务的优缺点是什么?

1 个答案:

答案 0 :(得分:1)

IMO,它取决于开发和托管此新服务的位置和时间。如果你是一个处理一个应用程序的单人商店,那么任何一条路都没有差别。在开发时,您知道系统的输入和输出,您知道应该在哪里编写数据访问代码,在数据库和应用程序之间传输什么类型的数据以及在您的应用程序中使用此信息的位置。

这就是为什么有些人即使使用10英尺杆也不会接触任何Web服务的原因。您正在引入额外的开销和复杂性,而无法证明您为什么需要它。

假设您工作的地方有很多开发人员参与开发各种应用程序,这些应用程序在某个时间点需要彼此交谈并希望共享信息。在这种情况下,您可能有内部策略来强制您可以使用哪些库版本来构建数据访问逻辑和应用程序中的其他业务功能。因此,在这样的环境中,当您引入新服务时,考虑可能的服务重用是明智的。当您开发新服务并在数据库表的顶部打一个CRUD接口时,当您的数据模型扩展时,您将最终获得大量服务。然后,对于新应用程序,当您重用这些服务时,一个操作可能涉及执行多个服务调用,这可能会产生低于标准的性能。因此,您最终将拥有另外一个或两个复合服务,它通过JDBC执行多个这些数据库调用以提高性能。然后,如果你这样做,很快就会有重复的服务。

将此情况与基于标准Java的方法进行对比,当您引入将影响多个现有系统的新服务时,您需要为所有这些系统编写代码以使用您的新服务。如果这些系统使用你正在使用的相同版本的库来编写,比如Hibernate,那么你的生活就会变得容易一些。如果这些系统是用不同的人以不同的方式编写的,那么生活就会变得复杂在这里,进行Web服务调用可能更容易。