我有一个从Excel文档读取的Spring Boot应用程序。目前,这是由我的控制器使用的服务来完成的。
当前,文档的路径在Service类中进行了硬编码。我想知道,这是否是最好的方法。
我还想了解单元测试代码的最佳实践。如何确保我不依赖于实际文件。我的助手方法是私有的。我在嘲笑它时遇到了麻烦。
答案 0 :(得分:0)
为了方便(易于部署,测试)和安全(代码中的纯文本与环境变量),配置详细信息应为externalized。这是一个很好的discussion。
模拟是对它进行单元测试的方法。您应该更具体地解决此问题,恕我直言,最好在另一个问题中提出。
答案 1 :(得分:0)
您可以通过任何变量名称在“ application.properties”文件中提供路径。
例如:
my-file=/home/path/to/file.extension
然后,在您的服务类中,声明一个变量,如:
@Value("${my-file}")
private String filePath;
现在文件将具有您在应用程序属性中提供的值。当您的应用程序启动时,它将自动将文件的路径绑定到变量中。这样,您很容易修改路径。 Spring框架将神奇地对其进行管理。