当前位置: 首页 > 知识库问答 >
问题:

在Spring Boot Project java中动态加载Swagger API Url参数

郝承悦
2023-03-14

我有一个要求,即在项目编译时,我必须动态加载一个Swagger api url参数。这是一个springboot项目。例如,如果有这样的情况:-

当我运行这个大摇大摆的UI时,这个api应该看起来像“/pet/1”。我理解,我们必须在项目本身中提供包含“petId”的数据/文件,以便仅在编译时获取petId的值。我只是不知道在Spring Boot Java项目中在何处以及如何做到这一点,在这个项目中,这些招摇过市API是通过启用招摇过市的REST注释(如下所示)创建的:-@RequestMapping(value=“/pet/{petId}”,consumes={“text/plain”},method=RequestMethod.POST)。再次总结一下——当我为我的项目运行Swagger UI时,上面给出的api应该是“/pet/1”(petId=1),而不是“/pet/{petId}”。非常感谢您的帮助。

共有1个答案

濮阳品
2023-03-14

必须使用@ApiParam注释,如以下示例所示:

    @GetMapping(BASE_URL_USERS + "/{id}")
    @ApiOperation(value = "getUserById() - Retrieves a user by ID",
            authorizations = {@Authorization(value = "basicAuth")}
    )
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "Success"),
            @ApiResponse(code = 401, message = "Invalid credentials"),
            @ApiResponse(code = 404, message = "User not found"),
            @ApiResponse(code = 500, message = "Internal server error")
    })
    @ResponseStatus(value = HttpStatus.OK)
    UserDTO getUserByIdUsingGET(
            @ApiParam(value = "ProcessID", required=false) @RequestHeader(value="processID", required=false) String processID,
            @ApiParam(value = "User ID",required=true) @PathVariable("id") Long id
    );
 类似资料:
  • 该应用程序是模块化插件架构。即,在完成工作的同时动态加载类。为此,自定义类加载器扩展了类加载器。 问题的本质是在Eclipse中运行应用程序,而在终端(ubuntu)中使用以下代码行(其中目录m/表示模块的位置*. class): 我得到以下信息: 10:07:24085调试主CModuleLoader:findClass:39-运行系统类加载器。线程“main”java中出现异常。朗。反思。在太

  • 问题内容: 我正在尝试为我的网站创建页面主题功能。我想使用单独的CSS文件在页面上动态加载相应的主题。 我正在使用此代码: 效果很好,但是如果CSS文件未加载,它不会返回任何信息。 加载时,有什么方法可以捕捉吗?也许通过使用ajax? 问题答案: 加载CSS文件(或其任何其他更改)时,Internet Explorer会触发一个事件。其他浏览器不会触发任何事件,因此您将必须手动检查样式表是否已加载

  •  说明 调用方法: $.f2e.util.getScript(url,cache,fn); 函数说明: 加载js,并提供相关回调 参数说明: 参数名 类型 说明 备注 url string 地址 无 cache boolean 缓存 无 fn function 回调函数 无 脚本 <script> $.f2e.util.getScript(url,true,function(){

  • 我有OSGI bundle(比方说A),它依赖于非OSGI库(比方说B)。B正在使用class.ForName加载一个类(库A中的ClassA是库B中的ClassB类型)。我已经包装了库B,使其成为osgi捆绑包,并导入了库A中所需的包,但我无法使用class.forname加载该类。请注意,库B是第三方库,我没有任何控制这一点。 下面是我创建的支持OSGI的库B的清单文件- manifest-v

  • 问题内容: 我目前有一个内置路由的AngularJS应用,它与静态属性分配完美配合。但是我真正想做的是为控制器分配不同的路由: 我想做的是在这里对我的财产做同样的事情,例如: 但似乎我得到一个错误,说找不到 所以有什么办法可以在路由配置中动态加载控制器功能名称? 问题答案: 使用angular ui-router可以做到这一点。 ui-router允许您指定“ controllerProvider

  • 问题内容: 我正在尝试编写一个将从用户的串行端口读取的Java小程序。为此,我将Java Comm API 与RXTX库结合使用。我已经成功地通过本地Java应用程序读取了数据,但似乎无法在applet中进行相同的操作。问题在于RXTX库是一个本机库,我还没有找到在Java小程序中加载该库的方法。我发现了两篇有趣的文章(在Applets中使用JNI引用了本文),但是这两篇文章已有10多年的历史了,