【问题标题】:Spring boot best practisesSpring Boot 最佳实践
【发布时间】:2020-03-08 14:40:51
【问题描述】:

我有一个从 Excel 文档中读取的 Spring Boot 应用程序。这目前由我的控制器使用的服务完成。

目前文档的路径是硬编码在服务类中的。我想知道,这是否是最好的方法。

我还想知道对我的代码进行单元测试的最佳做法。如何确保我与实际文件没有依赖关系。我的辅助方法是私有的。我在嘲笑它时遇到了麻烦。

【问题讨论】:

    标签: spring-boot junit mojito


    【解决方案1】:

    您可以通过任何变量名在“application.properties”文件中提供路径。

    例如:

    my-file=/home/path/to/file.extension
    

    然后,在您的服务类中,声明一个变量,如:

    @Value("${my-file}")
    private String filePath;
    

    现在文件将具有您在应用程序属性中提供的值。当您的应用程序启动时,它会自动将您的文件路径绑定到您的变量中。这样,您就可以轻松修改路径。 Spring 框架将神奇地开箱即用地管理它。

    【讨论】:

      【解决方案2】:

      为了方便(易于部署、测试)和安全性(代码中的纯文本与环境变量),配置详细信息应为 externalized。这是一个很好的discussion 主题。

      模拟是对其进行单元测试的方式。您应该更具体地说明您遇到的问题,恕我直言,最好在另一个问题中提出。

      【讨论】:

        猜你喜欢
        • 2020-09-30
        • 2020-04-19
        • 1970-01-01
        • 2022-11-17
        • 2022-01-07
        • 2023-03-18
        • 2019-02-05
        • 2015-03-18
        • 2015-09-11
        相关资源
        最近更新 更多