主要观点:为 Spring Boot 应用检查 Synology RS815+ NAS 上的备份文件,需能轻松测试存储在该 NAS 上的文件而无需复制 7TB 数据,创建FileStructureCreator
类来创建文件结构及必要文件,可在 JUnit 测试和 Spring 开发配置文件中使用,还展示了在 Spring Boot 应用中定义@Configuration
类创建数据结构,且FileStructureCreator
实现AutoCloseable
在应用关闭时自动调用close()
方法清理文件。
关键信息:
FileStructureCreator
类通过create
和createTempDirectory
方法创建文件结构,接受基础文件并读取其中元数据创建目录和文件,实现Closeable
接口在关闭时删除创建的文件结构。- 可在 Synology NAS 上通过命令生成特定目录的文件树结构并复制到项目中。
- 在 JUnit 测试中使用
FileStructureCreator
类进行测试,测试方法中创建临时文件结构并进行相关操作。 - 在 Spring Boot 应用中通过
@Configuration
类和@Profile("dev")
定义创建文件共享的数据结构的Bean
,应用关闭时自动清理文件。
重要细节: FileStructureCreator
类中的baseTestPath
为testFiles
路径,创建文件结构时先确保baseTestPath
存在,根据传入参数决定是否创建临时目录,读取基础文件中的元数据创建文件和目录,并设置最后修改时间。- JUnit 测试中通过
@Value
注解注入测试文件路径,在测试方法中使用try-with-resources
语句创建FileStructureCreator
对象进行测试,若预期抛出RuntimeException
则在测试失败时断言为false
。 - Spring Boot 应用中的
TestFilesInstaller
类通过@Configuration
和@Profile("dev")
注解定义创建ftpFiles
和nfsFiles
的Bean
,分别读取对应的备份文件创建文件结构。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。