gpt4 book ai didi

java - Springfox 复制 Controller

转载 作者:太空宇宙 更新时间:2023-11-04 09:12:33 25 4
gpt4 key购买 nike

我正在尝试使用 swagger-codegenspringfox 在 Web 服务开发过程中赢得时间。

我遇到了为带注释的接口(interface)类以及 Controller 实现创建端点的问题,如下所示:

我找到了一种解决方法,通过在 Controller 中添加标签(例如:@Api(tags={ "Player"})),但我正在寻找一种更好的方法来防止这种情况,因为如果我使用代码生成,它可以避免这种必须在代码中添加内容的情况。

使用 swagger-codegen,我只需编写一个 RestController (PlayerApiImpl),如下所示:

@RestController
public class PlayerApiImpl implements PlayerApi {

@Override
public ResponseEntity<Player> playerIdGet(String id) {
PlayerDTO ret = service.getOne(Long.parseLong(id));
if (ret == null) {
throw new PlayerNotFoundException();
}
return ResponseEntity.ok(mapper.toModel(ret));
}
}

虽然所有内容都生成为接口(interface)(此处为 PlayerApi)。所以我想尽可能保持简单。

最佳答案

我决定进一步插入我的解决方法,并找到了这个解决方案:

实际上可以直接在生成的接口(interface)中添加 @Api 注释,以防止您将其添加到实现中。为此,您需要使用可以在 swagger 文件所在的目录中创建的 mustache 模板文件。

这可能不是最好的解决方案,所以如果您有更好的建议,请随时发表评论。

关于java - Springfox 复制 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59501491/

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