Heim >Java >javaLernprogramm >So verwenden Sie Swagger im Springboot-Projekt
Swagger ist ein Webdienst, der zum Generieren, Beschreiben und Aufrufen von RESTful-Schnittstellen verwendet wird. Laienhaft ausgedrückt ist Swagger ein Dienst, der alle Schnittstellen im Projekt (die Sie verfügbar machen möchten) auf der Seite anzeigt und das Aufrufen und Testen von Schnittstellen ermöglicht.
Swagger hat die folgenden drei wichtigen Funktionen: Zeigt alle Schnittstellen im Projekt auf der Seite an, sodass Back-End-Programmierer keine speziellen Schnittstellendokumente für Front-End-Benutzer schreiben müssen, sondern nur, wenn die Schnittstelle aktualisiert wird Ändern Sie den Code. Die Swagger-Beschreibung kann in Echtzeit neue Schnittstellendokumente generieren, wodurch das Problem alter Schnittstellendokumente vermieden wird, die nicht über die Swagger-Seite verwendet werden können. Wir können die Schnittstelle direkt aufrufen, um unsere Entwicklung zu erleichtern.
1) In solchen Abhängigkeiten
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>
2) Erstellen Sie eine Controller-Klasse
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class TestController { @PostMapping("/hello") public String hello(String str){ return "hello,"+str; } }
3) Erstellen Sie eine Swagger-Konfigurationsklasse SwaggerConfig-Klasse
@Configuration @EnableSwagger2//开始Swagger2 public class SwaggerConfig { //配置了Swagger 的Docket的bean实例 @Bean public Docket docket(){ ParameterBuilder ticketPar = new ParameterBuilder(); List<Parameter> pars = new ArrayList<>(); ticketPar.name("Authorization").description("token")//Token 以及Authorization 为自定义的参数,session保存的名字是哪个就可以写成那个 .modelRef(new ModelRef("string")).parameterType("header") .required(false).build(); //header中的ticket参数非必填,传空也可以 pars.add(ticketPar.build()); //根据每个方法名也知道当前方法在设置什么参数 return new Docket(DocumentationType.SPRING_WEB) .apiInfo(apiInfo()) .select() //RequestHandlerSelectors, 配置要扫描接口的方式 //basePackage:指定要扫描的包 //any():扫描全部 //withClassAnnotation: 扫描类上的注解 //withMethodAnnotation: 扫描方法上的注解 .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller")) .build() .globalOperationParameters(pars); } //配置Swagger 信息=apiInfo private ApiInfo apiInfo(){ return new ApiInfo( "Logistics Api",//文檔命名 "test",//文檔描述 "v1.0",// "http:127.0.0.1/", null,//contact "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", new ArrayList() ); } }
Achtung!
Achtung!
Achtung!
Schreiben Sie den
"com.example.swagger.controller"-Pfad in apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller")) als Pfad Ihres eigenen Controller-Pakets
Klicken Sie nach Abschluss der oben genannten Schritte auf Ausführen und rufen Sie die folgende URL im Browser auf:
http://127.0.0.1:8080/swagger- ui.html#/
Der Port hier sollte in Ihren eigenen Port geändert werden.
Der Effekt ist wie im Bild dargestellt
Das obige ist der detaillierte Inhalt vonSo verwenden Sie Swagger im Springboot-Projekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!