Swagger整合Serverlet API(纯servlet)

参看了一下资料,国内的关于Swagger整合Springboot、SpringMVC的和很多。 但是,怎么整合纯Servlet一直没有度娘到。由于项目需要特整理了一个。  自己查查官方资料并整理如下。 

参考代码地址: https://github.com/kkman2008/SwaggerServletSample

Swagger官网: https://swagger.io/

步骤1。创建一个简单的maven web-app并在pom.xml中添加以下依赖项

 
            com.wordnik  
            swagger-annotations  
            1.3.11  
         
         
            com.wordnik  
            swagger-servlet_2.10  
            1.3.13  
             
                 
                    com.google.guava  
                    guava  
                 
           
         
         
            io.swagger
            swagger-servlet  
            1.5.7  
             
                 
                    com.google.guava  
                    guava  
                 
             
         
         
            com.wordnik  
            swagger-jersey-jaxrs_2.10  
            1.3.13  
         
         
            com.google.guava  
            guava
            19.0  
         
         
            com.wordnik  
            swagger-core_2.10  
            1.3.13  
            comiplie 
       

第2步:在web.xml中注册所需的servlet 以处理swagger注释...以及托管swagger文档

一个。昂首注释扫描仪

<! - swagger servlet reader - >

     
        DefaultServletReaderConfig  
        com.wordnik.swagger.servlet.config.DefaultServletReaderConfig  
         
            swagger.resource .package  
            servlet.kvn  
         
         
            swagger.api.basepath  
            < param-value> http:// localhost:8180 / swaggerservlet  
         
         
            api.version
            1.0.0  
       
        1  
   

 swagger servlet用于托管文档

<! - 用于访问swagger文档的swagger api声明servlet - > 
     
        ApiDeclarationServlet  
        com.wordnik.swagger.servlet.listing.ApiDeclarationServlet  
     
     
        ApiDeclarationServlet  
        / api-docs / *  
   

C。和一个带有swagger文档的简单servlet

 
        MyServlet  
        MyServlet  
         
        servlet.kvn.MyServlet  
   

 
        MyServlet  
        / MyServlet  
   

第3步:带有swagger注释的简单自定义servlet

@Api(value = “/MyServlet”, description = “My Simple Servlet”,produces=”application/json”)
public class MyServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public MyServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    @ApiOperation(
            value = “A get operation”,
            notes = “A Simple get operation”,
            httpMethod = “GET”,nickname=”myservlet”)
         public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        System.out.println(“Do Get Method Called.”);
        response.getWriter().write(“{status:Sucess fully called get method}”);
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.getWriter().write(“{status:Sucess fully called post method}”);
    }

}

步骤4:在任何服务器上构建和部署war文件,并访问http:// localhost:port / api-docs /中的swagger文档

你可能感兴趣的:(java)