JAX-RS web服务体系结构模式



开发JAX-RS web服务的常见实践是什么?

我觉得我的建筑有一种味道:

web服务充当代理,从不同的来源收集信息。有RSS提要、SOAP服务和数据库。

我想在我的业务逻辑中抽象出数据源。这就是为什么我想到了这样的东西:

持久层:

| RSS Connector   Parser         SOAP Interface(s)             Entities        |
|     SomeRssDataDAO       SomeSoapDao   AnotherSoapDap    UserDao  ...Dao     |
服务层

|    SomeRssDataService            SoapDataService        UserFavoritesService |

"资源"层
|       JerseyResources that map HTTP to service methods                       |

服务层和持久层都是ejb。

我面临的问题是,我将在持久层有事务。如果一个服务需要使用多个步骤来完成它的工作,那就不合适了。

但是在我的服务层中使用transactions/entitymanager似乎不正确。

怎么走?

我不认为事务由服务层管理有什么问题。这就是决定什么应该是原子的上下文。

您的服务层不需要是ejb,除非您计划分发它们。您可以使用JDO或JPA事务来管理持久性操作。

您的"持久化层"也不需要真的是ejb,除非您计划分发它们。

最新更新