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

Swagger 2.0将如何处理参数或返回类型中的泛型?

柴霖
2023-03-14

我使用Swagger 2.0来生成文档。在我的控制器类中,我有一些操作,比如:

public Page<Employee> getEmployees(Pageable pageable) {....}

为响应上述操作而生成的Swagger文档:

"responses" : {
          "200" : {
            "schema" : {
              "$ref" : "#/definitions/Page"
              } 
            }
          }

这里,Swagger留档没有说响应是页面

如果我有以下返回类型呢?

java prettyprint-override">Page<String,Employee>
Page<Employee,List<Department>>
Page<Employee,Tuple.Two<String,User>>

Swagger操作参数和模型属性也是如此。


共有1个答案

鞠征
2023-03-14

这是 Swagger 的已知问题,请检查以下问题:https://github.com/OAI/OpenAPI-Specification/issues/957。关键是,您需要创建自己的扩展来描述泛型。

 类似资料:
  • 我试图创建一个Java方法,它接受一个对象类型和它应该转换成的数据类型。 例如,如果我应该能够返回一个值1作为Int或双根据需要。我使用类传递数据类型作为参数。 问题:如何使方法泛型以接受基于输入参数的返回类型? 下面的代码只是一个示例,它可能在语法上不正确,用于解释我的问题。

  • 问题内容: 我尝试用泛型创建一个抽象类。业务逻辑是将文本从一种语言翻译成另一种语言。每种语言都必须有一个课程。对于每种语言,我还需要一个类,该类是方法的返回对象,它具有参数。T应该是(例如EnglishText,ChineseText等)的子类。那就是我奋斗的地方。您如何编码此约束? 我创建了以下超级类。 如果我误解了泛型的概念或将其错误地使用,请说明一下。谢谢。 问题答案: 只需将其添加到定义泛

  • 我试图创建一个返回泛型类型参数的方法。 我有一个类车辆订单扩展抽象类订单。在类订单中,我创建了一个抽象方法接收HiredObject。这个方法不会接收任何参数,并将返回一个泛型。 我在VehicleOrder类中实现了这个方法,并将其设置为返回类参数vehicle。 问题是,当我实例化一个新的VeilceOrderorororororororororororororderororororororo

  • 我在我的一个实用程序类中有一个方法,它接受一个集合和一个类对象,并返回一个Iterable实例,该实例可以遍历作为指定类实例的集合的所有成员。其签名为: 这对于大多数用例都非常有效,但现在我需要将其与泛型类

  • 可以使用泛型将返回类型与参数类型匹配吗? 实例案例: 我有一个抽象类,可以从不同的POJO导入数据,这个类包含一个abstract方法importData。 importData返回的对象必须与传递给该方法的对象类型相同。 由于抽象方法的每个实现的对象类型不同,并且类型不扩展另一个,如何定义抽象方法,以便实现返回类型和传递类型必须匹配? 经过考验: 结果: 方法的返回类型不必与传递的对象类型匹配。