gpt4 book ai didi

java - 使用 Spring 框架构建库或 API 好吗?

转载 作者:行者123 更新时间:2023-12-02 11:23:52 25 4
gpt4 key购买 nike

我目前正在构建一个库或 API,将由另一个 Spring REST 应用程序使用,以下是我认为使用 Spring 的优点。

  1. Spring 流程(上下文初始化 -> 构造后)
  2. 读取属性文件的简单方法
  3. Autowiring 和 Bean 管理
  4. 快速发展

以下是缺点

  1. 紧密耦合,要使用库/API 的主应用程序必须导入或引用库的配置类才能初始化上下文
  2. 主应用必须使用Spring(考虑在其他项目中使用)

我还缺少什么吗?Spring框架可以用来开发API或库吗?

注意:需要构建的库数量为3-5个, future 还会增加。

最佳答案

使用您提供的 spring 的唯一原因是从应用程序运行时的构建中受益。

我不认为 Spring 对于库有很大的优势:它只是替换了一些 newset 语句,这可以很容易地在doc,甚至为您的 api 用户提供一些示例 bean 声明,如果他希望在 spring 上下文中初始化您的 lib。

您没有给出的缺点之一是您的库对多个 Spring 版本的支持:一两年后会发生什么,当使用您的库开发的旧应用程序需要小的增强,但仍然在 spring v4 上,但新应用程序将导入 spring v6 (没有资源将 spring v4 上的旧应用程序迁移到最新版本)?

因此,只有当您需要参与主应用程序的数据库事务(以及其他像这样的使用 Spring 非常方便的任务)时,我才会在库中使用 spring,但否则尝试尽可能少地依赖 Spring 。

编辑:即使在库运行时最大限度地减少 spring 的使用,您也可以广泛使用它来测试您的库。

spring 上下文并没有包含在您的 lib 资源中,而只是一个测试资源,例如,您可以使用它来引导 spring-test。

关于java - 使用 Spring 框架构建库或 API 好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49731830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com