xml 配置的spring+springMVC 中增加swagger

从尝试着在ssm项目中配置swagger的过程中,疯狂百度、谷歌,仍然配置的有问题,好尴尬。


配置到最后的结果,还不知道怎么用。。。
  1. 趁着热乎着,赶紧把配置的过程先记录一下,再进行下一步配置和试验:
    pom.xml
        <!-- swagger -->
        <dependency>
            <groupId>com.mangofactory</groupId>
            <artifactId>swagger-springmvc</artifactId>
            <version>1.0.2</version>
        </dependency>
        <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-core</artifactId>
          <version>2.5.1</version>
          </dependency>
          <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-databind</artifactId>
          <version>2.5.1</version>
          </dependency>
          <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-annotations</artifactId>
          <version>2.5.1</version>
          </dependency>

web.xml

   <!-- 配置spring mvc 核心Servlet -->
    <servlet>
        <servlet-name>SpringMVC</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:system/spring-mvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
        <async-supported>true</async-supported>
    </servlet>
    <servlet-mapping>
        <servlet-name>SpringMVC</servlet-name>
         <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    <!-- 后面这个是新加的-->
    <servlet-mapping>
        <servlet-name>SpringMVC</servlet-name>
        <url-pattern>/api-docs</url-pattern>
    </servlet-mapping>

SwaggerConfig.java

import com.mangofactory.swagger.configuration.SpringSwaggerConfig;
import com.mangofactory.swagger.models.dto.ApiInfo;
import com.mangofactory.swagger.plugin.EnableSwagger;
import com.mangofactory.swagger.plugin.SwaggerSpringMvcPlugin;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@EnableSwagger
@Configuration
public class SwaggerConfig {


    private SpringSwaggerConfig springSwaggerConfig;

    /**
     * Required to autowire SpringSwaggerConfig
     */
    @Autowired
    public void setSpringSwaggerConfig(SpringSwaggerConfig springSwaggerConfig) {
        this.springSwaggerConfig = springSwaggerConfig;
    }

    /**
     * Every SwaggerSpringMvcPlugin bean is picked up by the swagger-mvc
     * framework - allowing for multiple swagger groups i.e. same code base
     * multiple swagger resource listings.
     */
    @Bean
    public SwaggerSpringMvcPlugin customImplementation() {
        return new SwaggerSpringMvcPlugin(this.springSwaggerConfig)
                .apiInfo(apiInfo())
                .includePatterns(".*?");
    }

    private ApiInfo apiInfo() {
        ApiInfo apiInfo = new ApiInfo(
                "ssm API 测试",
                "API测试",
                "My Apps API terms of service",
                "ne_lucifer@163.com",
                "web app",
                "My Apps API License URL");
        return apiInfo;
    }
}

spring-mvc.xml

    <!-- 将 springSwaggerConfig加载到spring容器 -->
    <bean class="com.mangofactory.swagger.configuration.SpringSwaggerConfig" />

    <!-- 将自定义的swagger配置类加载到spring容器 -->
    <bean class="上面这个SwaggerConfig.java文件的路径" />

这块:这个是swagger-ui;复制dist文件夹下面的东西拷贝到项目中
https://github.com/swagger-api/swagger-ui.git

修改:index.html里面的


index.html

换成自己的项目路径+/api-docs

总是出现:

  1. Failed to load spec. 这个错误,处理方法:把swagger-ui的3.*版本换成


    image.png

    v2.0.24版本就变成错误2 了;


    image.png
  1. Can’t read swagger JSON from。。。。。
    在web.xml中添加红框中的,就成了开文那张图了,算是把几个controller显示出来了。。。


    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,429评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,160评论 19 139
  • 其实我并不想用这个题目。但是简书里的高手都谆谆教诲我:顽子,题目很重要。(可是我仍然起了一个烂题目,不是吗?进来的...
    Lady娜姐姐阅读 4,231评论 43 34
  • 可人草三阅读 1,081评论 0 0
  • 做了一个梦 梦到久远的你 那时的你喜欢我 我也喜欢你 相处的日子还不够久吗? 一年的邻桌 几年的中学生活 你我终没...
    浊浊玉阅读 1,396评论 2 1

友情链接更多精彩内容