zoukankan      html  css  js  c++  java
  • 5月9号

    一、

      Swagger是一个 用于生成、描述、调用和可视化RESTful风格的Web服务。

    -------------------------------------------类

    @Controller

    @Api(value="/person",description="针对用户的插入,删除,查看等操作")

    @RequestMapping("/person")

    ------------------------------------------方法

    @RequestMapping(value = "/show/{id}",method= RequestMethod.GET)
    @ResponseBody
    @ApiOperation(value="查看",notes="查看用户", response = Person.class)
    public Person getPerson(@PathVariable("id")int id){
    ---------------------

    @ApiModel(value = "a person",description = "a class description a person")
    public class Person implements Serializable{

    @ApiModelProperty(value = "id",notes = "the unique id")
    private int id;
    ------------------------

    亿:

    *后端的配置方案有两种,一种是使用默认配置,即在servlet的spring配置文件中增加以下bean的定义

    <bean class ="com.managofactory.swagger.configuration.SpringSwaggerConfig"/>
    如果不想用默认配置,可以进行自定义一些信息,比如api的说明,联系人信息等.增加配置类,同时确保该类可被定义为spring bean

    @Configuration
    @EnableSwagger //用于支持swagger,必须和@confuguratin共用,我没有找到这个注解是如何起作用的.
    @EnableWebMvc //和 <mvc:annotation-driven />共用,有可能会导致异常[异常][2]
    public class SwaggerConfig {
    private SpringSwaggerConfig config;

    //注入默认配置方案中定义的bean
    @Autowired
    public void setSpringSwaggerConfig(SpringSwaggerConfig springSwaggerConfig){
    this.config = springSwaggerConfig;
    }
    @Bean
    public SwaggerSpringMvcPlugin getPlugin(){ //最主要的目的就是获得该bean.
    return new SwaggerSpringMvcPlugin(config).apiInfo(getApiInfo()); //config对象很重要. 是swaggerSpringMvcPlugin中最重要的一个对象
    }

    private ApiInfo getApiInfo(){ //提供api的说明,开发者联系方式等
    return new ApiInfo("person",
    "CURD for person",
    "",
    "myemail@163.com",
    "",
    "");
    }

    亿。

    亿:

    常用注解:

    注解 描述 解释
    @Api-----------------------Marks a class as a Swagger resource. 用于类对象,只有在类对象上标注该注解后,相应的api信息才能展示出来.
    @ApiOperation----------------- Describes an operation or typically a HTTP method against a specific path. 描述具体的方法
    @ApiImplicitParam-------------------------- Represents a single parameter in an API Operation. 描述具体的请求参数,比如具体的响应方法的参数为 HttpServletRequest时,我会从该参数中取一些请求参数,则可以通过该方法单独定义参数.见下面的具体说明,该参数不能单独使用,必须和@ApiImplicitParams一起使用,可参考后面的例子
    @ApiImplicitParams---------------------- A wrapper to allow a list of multiple ApiImplicitParam objects. 组合一组@ApiImplicitParam
    @ApiParam-------------------- Adds additional meta-data for operation parameters. 定义具体的请求参数,类似@RequestParam 参数,直接在方法参数上使用.
    @ApiResponse-------------------------------- Describes a possible response of an operation. 返回值,该类主要有code值与message两个属性,code值必须是http 返回code值,默认会有200,404等,不能单独使用,必须和@ApiResponses一起使用
    @ApiResponses------------------- A wrapper to allow a list of multiple ApiResponse objects. 组合@ApiResponse
    @ApiModel------------------ Provides additional information about Swagger models. 提供对请求参数与返回结果中的model的定义
    ---------------------

    ApiImplicitParam 使用说明

    @ApiImplicitParams({@ApiImplicitParam(name = "id",paramType = "query",dataType = "java.lang.String")})
    @RequestMapping(value = "doNothing",method = RequestMethod.GET)
    @ResponseBody
    public String log(HttpServletRequest request){
    String id = request.getParameter("id");
    System.out.println(id);
    return "OK";
    }
    ---------------------
    作者:曲雨齐
    原文:https://blog.csdn.net/nblife0000/article/details/52564240

    亿。

    二、

    作者:https://www.cnblogs.com/wz2cool/p/7286377.html

    初识 tk.mybatis.mapper通用mapper

    本次例子地址(源码):https://github.com/wz2cool/tk-mybatis-demo

    传统Mybatis用法

     SprinfBoot

     引用基本的jar到pom

       

    sql数据准备

      

    entity

    Dao

    这里的ProductDao是传统的mybatis的用法

    mapper

    传统mybatis我们必须有个xml文件和Dao对应起来,tk.maybatis.mapper无需此文件。

    设置扫描包

    application.properties

    注意这里的配置只是针对我们传统mybatis配置,对于tk.maybatis.mapper可以省略这里的配置。

    测试我们可以简单调用下

    我们可以看到输出结果,基本上就通了

     ---亿:传统mybatis用法-1.SpringBoot引用基本的jar到pom。2.sql数据准备。3.entity。4.Dao。5.mapper。6.设置扫描包。7.application.properties,注意这里的配置只是针对我们mybatis配置,对于tk.maybatis.mapper可以省略这里的配置。8.测试。亿。

     

     tk.mybatis.mapper用法

    添加引用

    需要多添加两个引用(ps:曾经少了一个mapper-sprig-boot-starter,报错死活找不到为sha--!!!)

    继承通用mapper

    嗯 是的没有xml文件。

    测试调用

    dao里面自带很多方法,比如selectAll(),insert().

    tk.mybatis.mapper初步使用感受

    优势

       1.无需xml文件和Dao对应。

       2.无需指定xml文件位置(因为就没有xml文件)。

       3.自带多种常用方法。

    tk.mybatismapper(Criteria)筛选

    在理解Example以后,就开始了解了Criteria筛选,当然Example还是可以做排序的。

    来看看tk.mapper筛选是如何做的

    结束

    这个只是初次使用tk.mybatis.mapper确实不错,可以减少工作量,好像还是可以生成Dao和mapper的工具。

    要有自己的Mapper

    看了tk.mybatis.mapper以后,觉得通用mapper也应该加入到Mybatis Dynamic Query中去,当然实现可能有点不一样。

    四、

    首先,需要一个返回的实体类对象接收

  • 相关阅读:
    MSchart设置网格线
    搭建ELDK交叉编译环境
    Virtualbox设置共享文件夹的方法
    VS2010自动关闭问题的解决方法
    如何让PHPCms内容页支持JavaScript
    Phpcms V9 调用全站最新文章的代码
    Phpcms V9 调用随机文章的方法
    VMware下Ubuntu不能和主机共享文件夹的解决方法
    Xshell无法连接Ubuntu的解决办法
    Phpcms V9 调用全站文章排行的解决方案
  • 原文地址:https://www.cnblogs.com/wym591273/p/10841013.html
Copyright © 2011-2022 走看看