Spring项目中swagger用法与swagger-ui使用

 更新时间:2021年05月26日 15:16:37   作者:上善若水  
这篇文章主要介绍了Spring项目中swagger用法与swagger-ui使用,通过图文并茂的形式给大家介绍了编写springboot项目的方法及导入spring-fox依赖的代码详解,需要的朋友可以参考下

一、swagger用法

 1.1、编写springboot项目

在这里插入图片描述

package com.xbmu.controller;

import com.xbmu.bean.Person;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;

@RestController
@RequestMapping(value = "/person")
public class PersonController {
    @PostMapping("/postReq")
    public String postReq()
    {
        return "postReq";
    }
    @GetMapping("/getReq")
    public String getReq(String param1,String param2)
    {
        return "getReq";
    }
    @RequestMapping("/req")
    public String req(String param1)
    {
        return "req";
    }

    @RequestMapping(value = "/getPersonSingle",method = RequestMethod.GET)
    private Person getPersonSingle(Integer id){
        Person person;
        List<Person> personList = new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            person = new Person();
            person.setId(i+1);
            person.setName("zhangsan"+(i+1));
            person.setGender("男"+i);
            person.setAge(18+1);
            person.setAddress("shanxi xian");
            personList.add(person);
        }
        person = personList.get(id);
        return person;
    }
}

1.2、导入spring-fox依赖

在项目pom.xml中导入spring-fox依赖,该项目选择版本为2.9.2。其中springfox-swagger2是核心内容的封装。springfox-swagger-ui是对swagger-ui的封装。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.xbmu</groupId>
    <artifactId>swagger-study</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.2.5.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <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>
    </dependencies>

</project>

1.3、添加注解

在springboot的启动类中添加 @EnableSwagger2 注解。
添加此注解后表示对当前项目中全部控制器进行扫描。应用swagger2。

package com.xbmu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
/**
 * EnableSwagger2 是springfox提供的一个注解,代表swagger2相关技术开启。
 * 会扫描当前类所在包,及子包中所有的类型中的注解。
 */
@SpringBootApplication
@EnableSwagger2
public class MyApp {
    public static void main(String[] args) {
        SpringApplication.run(MyApp.class,args);
    }
}

1.4、访问swagger-ui

启动项目后在浏览器中输入 http://ip:port/swagger-ui.html 既可以访问到swagger-ui页面,在页面中可以可视化的进行操作项目中所有接口。

二、swagger-ui使用

访问swagger-ui.html后面可以在页面中看到所有需要生成接口文档的额控制器名称。

在这里插入图片描述

每个控制器中包含多个所有控制器方法的各种访问方式。如果使用的是@RequestMapping进行映射,将显示下面的所有请求方式。如果使用@PostMapping将只有post方式可以能访问,下面也就只显示post的一个。

在这里插入图片描述

点击某个请求方式中 try it out

在这里插入图片描述

会出现界面要求输入的值。输入完成后点击Execute按钮

在这里插入图片描述

以上就是Spring项目中swagger用法与swagger-ui使用的详细内容,更多关于swagger用法与swagger-ui使用的资料请关注脚本之家其它相关文章!

相关文章

  • Mybatis Plus分页查询返回total为0问题解决

    Mybatis Plus分页查询返回total为0问题解决

    在使用MybatisPlus进行分页查询时,可能会遇到返回的总条数(total)为0的问题,这通常是由于未配置MybatisPlus的分页插件拦截器导致的,本文就来介绍一下解决方法,感兴趣的可以了解一下
    2024-10-10
  • SpringBoot Event 事件如何实现异步延迟执行

    SpringBoot Event 事件如何实现异步延迟执行

    这篇文章主要介绍了Spring Boot Event 事件如何实现异步延迟执行问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • SpringMVC 中的视图使用 JSP的过程

    SpringMVC 中的视图使用 JSP的过程

    本文介绍了如何在 SpringMVC 中使用 JSP 视图,包括如何创建 JSP 视图、配置 JSP 视图解析器、以及如何在控制器方法中使用JSP视图,本文给大家介绍的非常详细,需要的朋友参考下吧
    2023-07-07
  • Spring Boot打包war jar 部署tomcat

    Spring Boot打包war jar 部署tomcat

    这篇文章主要介绍了Spring Boot打包war jar 部署tomcat的相关资料,需要的朋友可以参考下
    2017-10-10
  • Java反转字符串和相关字符编码的问题解决

    Java反转字符串和相关字符编码的问题解决

    反转字符串一直被当作是简单问题,大家的思想主要就是利用遍历,首尾交换字符实现字符串的反转。例如下面的代码,就可以简单实现反转。
    2013-05-05
  • 如何使用Java计算修改文件的MD5值

    如何使用Java计算修改文件的MD5值

    这篇文章主要介绍了如何使用Java计算修改文件的MD5值,MD5是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值,用于确保信息传输完整一致,需要的朋友可以参考下
    2023-04-04
  • java通过AES生成公钥加密数据ECC加密公钥

    java通过AES生成公钥加密数据ECC加密公钥

    这篇文章主要为大家介绍了java通过AES生成公钥加密数据ECC加密公钥实现案例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • springboot的四种启动方式

    springboot的四种启动方式

    本文主要介绍了springboot的四种启动方式,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 如何解决Spring事务注解@Transactional在类内部方法调用不生效

    如何解决Spring事务注解@Transactional在类内部方法调用不生效

    这篇文章主要介绍了如何解决Spring事务注解@Transactional在类内部方法调用不生效问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • Java根据url生成图片、截图效果

    Java根据url生成图片、截图效果

    文章详细介绍了如何使用Java和Node.js结合Puppeteer库根据URL截图,并将图片转换为标准输出流返回给Java程序,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2025-01-01

最新评论