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",
"",
"[email protected]",
"",
"");
}

亿。

亿:

常用注解:

注解 描述 解释
@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中去,当然实现可能有点不一样。

四、

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

猜你喜欢

转载自www.cnblogs.com/wym591273/p/10841013.html