gpt4 book ai didi

java - Spring REST 从另一个类获取列表

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

总体而言,我对 Spring 和 REST API 都很陌生,但我现在正在尝试制作一个。因此,从我的 Controller 中,我想返回另一个方法在另一个类中返回的文件列表。代码可能比我能解释的更多:

   @RequestMapping("/backup")
public @ResponseBody List<FileInfo> backupFiles() {
return //Here i want to return the list of files
}

这是我的restController中的“方法”,我想返回FileInfo列表,今天它已经存在一个执行此操作的方法,如下所示

 private List<String> listBackupFiles() {
List<FileInfo> files = util.listBackupFilesInLocalDir(localStorage);
fileNameToSize = files.stream()
.collect(toMap(f -> f.name, f -> f.size));
return files.stream()
.map(f -> f.name)
.collect(toList());
}

所以基本上,我希望当有人访问 /backup 时,我希望触发上述方法并将文件列表返回到我的 restController,然后将其返回到请求者。我不知道这是否可能,或者是否有更好的方法来做到这一点。我就如何解决这个问题提供了一些建议。

最佳答案

Controller 将是:

  // @RestController = @Controller + @ResponseBody
@RestController
public class BackupController {

@Autowired
private BackupService backupService;

// you don't need @ResponseBody as you use @RestController
@RequestMapping("/backup")
public List<FileInfo> backupFiles() {
return backupService.listBackupFiles()
}
}

服务接口(interface)是:

public interface BackupService {

public List<FileInfo> listBackupFiles();
}

服务实现将是:

@Service
public class BackupServiceImpl implements BackupService {

public List<FileInfo> listBackupFiles() {
// localStorage come from
// maybe Util has it as static method, else inject it
return util.listBackupFilesInLocalDir(localStorage);
}
}

希望有帮助:)

关于java - Spring REST 从另一个类获取列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49277701/

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