4

我有一个返回 pojo 的 spring mvc 控制器:

@RequestMapping(value = "/person", method = RequestMethod.POST,headers="Accept=application/xml, application/json")
public @ResponseBody Person addPerson(@RequestBody Person person) {
  return personService.add(person);
}

此控制器位于服务器 A 上的 war 文件 A 中。

我有另一个 spring 应用程序,war 文件 b,它可能在不同的服务器或同一台服务器上运行。访问 addPerson 方法的最佳方法是什么?通过 http 请求或将类文件(和依赖项)打包为 jar 并包含在 war 文件 b 中?或者我是不是搞错了,应该做点别的?

4

1 回答 1

3

没有“最好的方法”,这完全取决于具体情况。战争 A 是否依赖于很多外部依赖项或数据库?如果是这样,将其包含在战争 B 中可能是不利的(实际上是在所有外部依赖项上复制负载),并且 Web 服务方法可能会更好。如果 A 是一个非常简单的应用程序,那么 Web 服务集成的额外复杂性可能会过大。也许他们应该完全合并?

但总的来说,您应该问自己(或写 A 和 B 的人)为什么将它们分成两个不同的应用程序。这可能是有原因的,如果它是一个令人信服的原因,您可能应该保持分离并进行 Web 服务调用。

于 2012-04-17T10:09:22.003 回答