日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

Spring Boot 集成 Swagger 生成 RESTful API 文档

發(fā)布時(shí)間:2025/5/22 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot 集成 Swagger 生成 RESTful API 文档 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

原文鏈接:

  • Spring Boot 集成 Swagger 生成 RESTful API 文檔

簡(jiǎn)介

Swagger 官網(wǎng)是這么描述它的:The Best APIs are Built with Swagger Tools。

Swagger 是一套基于 OpenAPI 規(guī)范構(gòu)建的開(kāi)源工具,可以幫助我們?cè)O(shè)計(jì)、構(gòu)建、記錄以及使用 Rest API。Swagger 主要包含了以下三個(gè)部分:

  • Swagger Editor:基于瀏覽器的編輯器,我們可以使用它編寫我們 OpenAPI 規(guī)范。
  • Swagger UI:它會(huì)將我們編寫的 OpenAPI 規(guī)范呈現(xiàn)為交互式的 API 文檔,后文我將使用瀏覽器來(lái)查看并且操作我們的 Rest API。
  • Swagger Codegen:它可以通過(guò)為 OpenAPI(以前稱為 Swagger)規(guī)范定義的任何 API 生成服務(wù)器存根和客戶端 SDK 來(lái)簡(jiǎn)化構(gòu)建過(guò)程。
  • Spring Boot 使得開(kāi)發(fā) RESTful 服務(wù)變得簡(jiǎn)單。那么編寫 Spring Boot 接口,為何要用 Swagger 呢?

    • 代碼改變,文檔就會(huì)改變。只需要少量的注釋,Swagger 就可以根據(jù)代碼自動(dòng)生成 API 文檔。
    • Swagger UI 是一份交互式的 API 文檔,可以直接在 Web 界面調(diào)用 API。這里有一份 Swagger UI 的 Live Demo,看看官方是怎么寫 RESTful API 的。

    添加依賴

    pom.xml 引入 Swagger 相關(guān)的依賴:

    <!-- swagger2 --> <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>${swagger.version}</version> </dependency> <!-- swagger2 ui --> <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>${swagger.version}</version> </dependency>

    使用 property 定義了 Swagger 的版本,因此還需要添加:

    <swagger.version>2.9.2</swagger.version>

    依賴說(shuō)明:

    • springfox-swagger2 Swagger 的 Java 實(shí)現(xiàn)
    • springfox-swagger-ui Swagger UI 頁(yè)面的依賴

    Swagger 配置類

    使用注解 @Configuration 編寫 Swagger 配置類—— SwaggerConfig。

    新建 config 的包,創(chuàng)建 SwaggerConifg 的配置類:

    //通過(guò)@Configuration注解,讓Spring來(lái)加載該類配置 @Configuration //通過(guò)@EnableSwagger2注解來(lái)啟用Swagger2 @EnableSwagger2 //@ConditionalOnExpression 為Spring的注解,用戶是否實(shí)例化本類,用于是否啟用Swagger的判斷(生產(chǎn)環(huán)境需要屏蔽Swagger) @ConditionalOnExpression("${swagger.enable:true}") public class SwaggerConfig {// select()函數(shù)返回一個(gè)ApiSelectorBuilder實(shí)例用來(lái)控制哪些接口暴露給Swagger來(lái)展現(xiàn),本例采用指定掃描的包路徑來(lái)定義,// Swagger會(huì)掃描該包下所有Controller定義的API,并產(chǎn)生文檔內(nèi)容(除了被@ApiIgnore指定的請(qǐng)求)@Beanpublic Docket createRestApi() {// apiInfo()用來(lái)創(chuàng)建該Api的基本信息(這些基本信息會(huì)展現(xiàn)在文檔頁(yè)面中ApiInfo apiInfo = new ApiInfoBuilder().title("標(biāo)題: Spring Boot 項(xiàng)目集成 Swagger 示例文檔").description("描述: 我的博客地址是 https://michael728.github.io").termsOfServiceUrl("https://michael728.github.io/").version("1.0").build();Docket docket = new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo)// select()函數(shù)返回一個(gè)ApiSelectorBuilder實(shí)例.select()// 決定了暴露哪些接口給 Swagger.paths(regex("/api/.*")).build().useDefaultResponseMessages(false).gloreturn docket;} }

    說(shuō)明:

    • @Configuration 是告訴 Spring Boot 需要加載這個(gè)配置類;
    • @EnableSwagger2 是啟用 Swagger2,沒(méi)加的話,就看不到效果了;
    • ApiInfo 對(duì)象用來(lái)設(shè)置一些文檔的版本號(hào)、聯(lián)系人郵箱、網(wǎng)站、版權(quán)、開(kāi)源協(xié)議等等信息(這些基本信息會(huì)展現(xiàn)在文檔頁(yè)面中)。并使用 Docket.apiInfo() 方法來(lái)設(shè)置;
    • Docket 上增加篩選。提供了 apis() 和 paths() 兩個(gè)方法幫助我們?cè)诓煌?jí)別上過(guò)濾接口:
      • apis() 這種方式我們可以指定包名的方式,讓 Swagger 只去某些包下面掃描;
      • paths() 這種方式可以通過(guò)篩選 API 的 url 來(lái)進(jìn)行篩選;
    • @ConditionalOnExpression("${swagger.enable:true}") 這個(gè)注解控制了是否啟用 Swagger,我們需要在 appplication.properties 中加上 swagger.enable=true

    編寫控制器類——Controller 類

    我們先介紹一下在用 Swagger 時(shí)的常用注解:

    • @API 類的注解,可以給控制器增加描述和標(biāo)簽信息。用在請(qǐng)求的類上,代表了這個(gè)類是 Swagger 的資源
      • tags:控制器標(biāo)簽,對(duì)該類進(jìn)行「分類」,參數(shù)是個(gè)字符串?dāng)?shù)組,如果配置了多個(gè)值,會(huì)在多個(gè)分類中看到;
      • value:該參數(shù)沒(méi)什么意義,在 UI 界面上并不顯示,可不用配置
    • @ApiModel 類注解,對(duì) API 涉及的對(duì)象做描述,可用于響應(yīng)實(shí)體類,說(shuō)明實(shí)體作用
      • value Model 展示時(shí)的名稱,默認(rèn)是 實(shí)體類的名稱,比如 UserEntity;
      • description 實(shí)體類的描述

    類成員變量的的注解:

    • @ApiModelProperty 用在實(shí)體類的屬性上
      • value 屬性字段描述;
      • required 參數(shù)是否必選;
      • name 重寫字段名稱;
      • dataType 重寫字段類型;
      • allowEmptyValue 是否允許為空;
      • allowbleValues 該字段允許的值。當(dāng)我們 API 某個(gè)參數(shù)為枚舉類型時(shí),使用這個(gè)參數(shù)就可以清楚高速 API 使用者能允許傳入的值

    方法的注解:

    • @ApiOperation 描述方法的用途,用來(lái)展開(kāi)對(duì)接口的描述
      • value 接口簡(jiǎn)要描述;
      • notes 接口發(fā)布說(shuō)明,詳細(xì)描述;
    • @ApiImplicitParams 用于描述接口的非對(duì)象參數(shù)集,一般與 @ApiImplicitParams 組合使用
    • @ApiImplicitParam 描述參數(shù)信息
      • value 參數(shù)意義的描述
      • name 參數(shù)名字;
      • required 默認(rèn) false,參數(shù)是否必傳
      • dataType 參數(shù)數(shù)據(jù)類型,只作為標(biāo)志說(shuō)明,并沒(méi)有實(shí)際驗(yàn)證
        • Long
        • String
      • paramType 參數(shù)類型,表示參數(shù)放在哪里
        • query,默認(rèn)值,Query String 的方式傳參,請(qǐng)求參數(shù)的獲取:@RequestParam
        • path 路徑參數(shù),請(qǐng)求參數(shù)的獲取:@PathVariable
        • header 請(qǐng)求參數(shù)的獲取:@RequestHeader
    • @PathVariable 路徑參數(shù),給類似 @GetMappIng("/user/{id}") 參數(shù)通過(guò)路徑傳入

    其他:

    • @ApiIgnore:用于類或者方法上,屏蔽接口不被顯示在頁(yè)面上;
    • @Profile({"dev","test"}):用于配置類上,表示對(duì)什么環(huán)境啟用;
    • @ApiParam 不能直接用在方法上,而是用在方法的形參定義中,下文會(huì)有示例;

    實(shí)體類示例:

    @Data @ApiModel(value = "用戶實(shí)體") public class UserEntity {public static final long serialVersionUID = 1L;@ApiModelProperty(value = "用戶 id")private int id;@ApiModelProperty(value = "用戶名", required = true)private String userName;@ApiModelProperty(value = "密碼" )private String passWord;@ApiModelProperty(value = "性別")private UserSexEnum userSex;@ApiModelProperty(value = "昵稱" )private String nickName;public UserEntity(Integer id, String userName, String passWord) {this.id = id;this.userName = userName;this.passWord = passWord;} }

    下面是一個(gè)控制類的示例:

    @RestController @RequestMapping("/api/v1/") @Api(tags = {"用戶相關(guān)接口"}, value = "用戶模塊") public class UserController {// 模擬數(shù)據(jù)庫(kù)public static List<UserEntity> users = new ArrayList<>();static {UserEntity user1 = new UserEntity(1, "michael", "123");UserEntity user2 = new UserEntity(2, "qq", "123");UserEntity user3 = new UserEntity(3, "hh", "123");users.add(user1);users.add(user2);users.add(user3);}@ApiOperation(value = "獲取用戶列表", notes = "獲取全部用戶信息")@RequestMapping(value = "/users", method = RequestMethod.GET)public List<UserEntity> getUsers() {return users;}@ApiOperation(value = "查詢單用戶", notes = "根據(jù)用戶id 查詢其信息")@ApiImplicitParam(name = "id", value = "用戶id", paramType = "query", required = true)@GetMapping("/user/{id}")public UserEntity getUser(@PathParam("id") int id) {UserEntity user = users.get(id);return user;}@ApiOperation(value = "存儲(chǔ)用戶信息", notes = "存儲(chǔ)用戶詳細(xì)信息")@RequestMapping(value = "/user", method = RequestMethod.POST)public UserEntity saveUser(@ApiParam(value = "用戶信息", required = true)@RequestBody UserEntity user) {users.add(user);return user;}@ApiOperation(value = "刪除用戶", notes = "根據(jù)用戶id刪除用戶信息")@ApiImplicitParams({@ApiImplicitParam(name = "id", value = "用戶id", required = true, paramType = "path")})@RequestMapping(value = "/user/{id}", method = RequestMethod.DELETE)public int deleteUser(@PathVariable("id") int id) {users.remove(id);return id;}@ApiOperation(value = "更新用戶信息", notes = "更新用戶的個(gè)人信息")@PutMapping("/user/")public UserEntity updateUser(@RequestBody UserEntity user) {int id = user.getId();UserEntity oldUser = users.get(id);users.set(id, user);return user;} }

    啟動(dòng)

    啟動(dòng)應(yīng)用,訪問(wèn) localhost:8080/swagger-ui.html 可以訪問(wèn)到 Swagger UI,可以點(diǎn)擊 Try it out 按鈕,調(diào)用 API:

    頁(yè)面上還會(huì)有一個(gè) Models 的分類。Swagger UI 會(huì)根據(jù)我們?cè)趯?shí)體上使用的 @ApiModel 和 @ApiModelProperty 注解來(lái)自動(dòng)補(bǔ)充實(shí)體以及其屬性的描述和備注。

    示例代碼

    • awesome-spring-boot-examples

    One More Thing

    Web API 的風(fēng)格

    開(kāi)發(fā) API,先了解一下有哪些 Web API 的風(fēng)格吧:

    • RPC:RPC 面向過(guò)程,RPC 形式的 API 組織形態(tài)是類和方法,API 的命名往往是一個(gè)動(dòng)詞,比如 GetUserInfo,CreateUser;
    • REST:REST 面向資源,也是下文將要介紹的一種 API 風(fēng)格;
    • GraphQL:就是面向數(shù)據(jù)查詢,采用GraphQL,甚至不需要有任何的接口文檔,在定義了Schema之后,服務(wù)端實(shí)現(xiàn)Schema,客戶端可以查看Schema,然后構(gòu)建出自己需要的查詢請(qǐng)求來(lái)獲得自己需要的數(shù)據(jù)

    REST

    上文提到了 RESTful API 的概念,我覺(jué)得,不如趁機(jī)了解一下。因?yàn)樵趯?shí)際的項(xiàng)目中發(fā)現(xiàn),并不是每個(gè) Spring Boot 的開(kāi)發(fā)人員都能意識(shí)到開(kāi)發(fā)的 API 要盡量符合 RESTful 規(guī)則的。REST 實(shí)際上只是一種設(shè)計(jì)風(fēng)格,它并不是標(biāo)準(zhǔn)。

    術(shù)語(yǔ):

    • Endpoint 終點(diǎn),可以理解為路徑,表示 API 的具體網(wǎng)址。
    • API(Application Programming Interface),應(yīng)用程序編程接口
    • REST 是 Representational State Transfer 的縮寫。如果一個(gè)架構(gòu)符合 REST 原則,就稱它為 RESTful 架構(gòu)。RESTful API 就是 REST 風(fēng)格的 API
      • Resource:資源,即數(shù)據(jù)。
      • Representational:某種表現(xiàn)形式,比如用 JSON,XML,JPEG 等;
      • State Transfer:狀態(tài)變化。通過(guò) HTTP 動(dòng)詞實(shí)現(xiàn)

    在 RESTful 架構(gòu)中,每個(gè)網(wǎng)址代表一種資源(resource),所以網(wǎng)址中不能有動(dòng)詞,只能有名詞,而且所用的名詞往往與數(shù)據(jù)庫(kù)的表格名對(duì)應(yīng)。

    資源的操作

    RESTful 的核心思想就是,客戶端發(fā)出的數(shù)據(jù)操作指令都是"動(dòng)詞 + 賓語(yǔ)"的結(jié)構(gòu)。比如,GET /articles 這個(gè)命令,GET 是動(dòng)詞,/articles 是賓語(yǔ)。

    對(duì)于資源的具體操作類型,由 HTTP 動(dòng)詞表示(括號(hào)里是對(duì)應(yīng)的 SQL 命令):

    • GET(SELECT):從服務(wù)器取出資源(一項(xiàng)或多項(xiàng))。
    • POST(CREATE):在服務(wù)器新建一個(gè)資源。
    • PUT(UPDATE):在服務(wù)器更新資源(客戶端提供改變后的完整資源)。
    • PATCH(UPDATE):在服務(wù)器更新資源(客戶端提供改變的屬性)。
    • DELETE(DELETE):從服務(wù)器刪除資源

    還有兩個(gè)不常用的 HTTP 動(dòng)詞:

    • HEAD:獲取資源的元數(shù)據(jù)。
    • OPTIONS:獲取信息,關(guān)于資源的哪些屬性是客戶端可以改變的

    知乎上的一個(gè)回答,我覺(jué)得很精辟:

    • 看 Url 就知道要什么
    • 看 http method 就知道干什么
    • 看 http status code 就知道結(jié)果如何

    一位答主給出的示例:

    GET /rest/api/getDogs --> GET /rest/api/dogs 獲取所有小狗狗 GET /rest/api/addDogs --> POST /rest/api/dogs 添加一個(gè)小狗狗 GET /rest/api/editDogs/:dog_id --> PUT /rest/api/dogs/:dog_id 修改一個(gè)小狗狗 GET /rest/api/deleteDogs/:dog_id --> DELETE /rest/api/dogs/:dog_id 刪除一個(gè)小狗狗

    信息過(guò)濾 Filtering

    如果記錄數(shù)量很多,服務(wù)器不可能都將它們返回給用戶。API 應(yīng)該提供參數(shù),過(guò)濾返回結(jié)果

    • ?limit=10:指定返回記錄的數(shù)量
    • ?offset=10:指定返回記錄的開(kāi)始位置。
    • ?page=2&per_page=100:指定第幾頁(yè),以及每頁(yè)的記錄數(shù)

    參考

    • CSDN-Spring Boot集成Swagger
    • 官宣-Swagger
    • IBM-在 Spring Boot 項(xiàng)目中使用 Swagger 文檔
    • 蜻蜓HTTP-springboot 集成完整的swagger2

    API 介紹

    • 阮一峰-RESTful API 設(shè)計(jì)指南
    • 阮一峰-RESTful API 最佳實(shí)踐
    • segmentfault-Philipp Hauer-[譯]RESTful API 設(shè)計(jì)最佳實(shí)踐 推薦
    • RESTful Service API 設(shè)計(jì)最佳工程實(shí)踐和常見(jiàn)問(wèn)題解決方案 總結(jié)的相當(dāng)好,博客值得閱讀
    • 華為云-API設(shè)計(jì)中關(guān)于RPC和REST 兩種風(fēng)格選擇的個(gè)人理解
    • 跟著 Github 學(xué)習(xí) Restful HTTP API 設(shè)計(jì)
    • 梁桂釗——人人都是 API 設(shè)計(jì)師:我對(duì) RESTful API、GraphQL、RPC API 的思考 作者分享了一些阿里團(tuán)隊(duì)里做法
    • 阿里研究員谷樸:API 設(shè)計(jì)最佳實(shí)踐的思考
    • 朱曄的互聯(lián)網(wǎng)架構(gòu)實(shí)踐心得S2E5:淺談四種API設(shè)計(jì)風(fēng)格(RPC、REST、GraphQL、服務(wù)端驅(qū)動(dòng))

    歡迎關(guān)注個(gè)人公眾號(hào) 「iPlayMichael」

    轉(zhuǎn)載于:https://www.cnblogs.com/michael-xiang/p/11216862.html

    總結(jié)

    以上是生活随笔為你收集整理的Spring Boot 集成 Swagger 生成 RESTful API 文档的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    久久香蕉国产精品麻豆粉嫩av | 国产99一区 | 国产一二区在线观看 | 天天爱综合 | 九九热在线观看 | 91精品国产91久久久久福利 | 色婷婷一| 国产原厂视频在线观看 | av女优中文字幕在线观看 | 亚洲在线视频观看 | 成人av高清 | 欧美精品少妇xxxxx喷水 | 国产麻豆精品久久一二三 | 久久婷婷国产 | 日韩在线观看视频网站 | 91一区二区三区久久久久国产乱 | 黄色软件在线观看视频 | 91亚洲狠狠婷婷综合久久久 | 精品一区 精品二区 | 国产精品免费久久久久久久久久中文 | 国产成人精品av久久 | 日本丶国产丶欧美色综合 | 亚洲最大在线视频 | 96亚洲精品久久 | 国产日产欧美在线观看 | 亚洲 欧洲av | 超碰公开在线观看 | 三级av免费看| 日韩在线观看第一页 | 久久精品国产免费看久久精品 | 国产专区视频 | 日韩高清三区 | 狠狠干成人| 精品国产三级 | 久久 国产一区 | 蜜臀aⅴ国产精品久久久国产 | 不卡av免费在线观看 | 91天天操| 狠狠狠操 | 麻豆久久久久 | 久久99热精品这里久久精品 | 免费亚洲婷婷 | 精品国产电影一区二区 | 香蕉影院在线播放 | 玖玖玖在线 | av大全免费在线观看 | 亚洲另类视频在线 | 亚洲精品免费看 | 国产亚洲精品久久 | 久久精品香蕉视频 | 日韩午夜在线观看 | 亚洲欧美视频在线 | 一 级 黄 色 片免费看的 | 精品久久久久国产免费第一页 | 综合色综合色 | 天天干天天射天天爽 | 97精品在线 | 十八岁以下禁止观看的1000个网站 | 欧美久草网 | 国产一区二区电影在线观看 | 天躁狠狠躁 | 国产一级免费在线 | 成人黄大片视频在线观看 | 中文字幕91在线 | 黄网站色视频 | 国产亚洲精品久久久久久无几年桃 | 日日操日日插 | 97视频免费观看 | 香蕉网在线观看 | 美女视频黄免费的久久 | 久久免费av | 中文字幕在线观看你懂的 | av免费在线播放 | 欧美黑人性猛交 | 探花视频在线版播放免费观看 | 午夜性生活 | 精品久久久99 | 亚洲精品视频在线看 | 日本久久高清视频 | 久久免费在线视频 | 日韩在线观看视频中文字幕 | 色av男人的天堂免费在线 | 国产精品久久久久av | 色噜噜在线观看视频 | 免费高清在线视频一区· | 亚洲精品99 | 国产精品久久久久久久久久新婚 | 在线亚洲观看 | 精品国产一区二区三区噜噜噜 | 一级黄视频 | 一二三久久久 | 国产视频2 | 在线91精品| 日韩a级黄色 | 深爱开心激情网 | 国产不卡一区二区视频 | 日本一区二区免费在线观看 | 亚洲一级黄色大片 | 成 人 黄 色 片 在线播放 | 在线观看日韩精品 | 中文字幕在线字幕中文 | 狠狠干我| 国产精品av在线 | 国产精品自产拍在线观看网站 | 激情丁香婷婷 | 九色精品在线 | 国语精品久久 | 国产精品不卡视频 | 美女网站在线观看 | 成 人 黄 色 视频免费播放 | 四虎成人网 | 久草视频在线播放 | 亚洲人人av| 婷婷.com| 中字幕视频在线永久在线观看免费 | 91免费网站在线观看 | av免费黄色 | www激情网 | 久久精品三级 | 久久理论视频 | 在线观看视频福利 | 国内外成人在线 | 99精品乱码国产在线观看 | 国产精品久久久久久久av大片 | 国产日产高清dvd碟片 | 免费高清在线一区 | 国产精品va在线观看入 | 丁香六月在线 | 九九国产视频 | 亚洲成人黄色网址 | 97视频亚洲 | 久草在线视频网 | 人人爽人人爽人人爽人人爽 | 亚洲电影一区二区 | 在线观看不卡视频 | 亚洲精品伦理在线 | 亚洲欧美综合 | 成人免费中文字幕 | 丁香婷婷综合色啪 | 偷拍视频一区 | 日韩欧美xxx | 97超碰香蕉| 亚洲一区黄色 | 久久久久久高潮国产精品视 | 欧美a在线看 | 天天做天天爱夜夜爽 | 久久久久久免费毛片精品 | 中文乱幕日产无线码1区 | 国产精品v a免费视频 | 一区二区理论片 | 三级黄色在线 | 国产欧美日韩一区 | 97人人网| 综合久久网站 | 国产又粗又硬又爽的视频 | 欧美性生爱| 久久爱资源网 | 久久精品久久久久久久 | 国产在线观看免费 | 日韩一区视频在线 | 国产精品自产拍在线观看网站 | 日韩二区在线观看 | 国产二区视频在线 | 少妇性bbb搡bbb爽爽爽欧美 | 国产又粗又长的视频 | 日韩欧美精选 | 亚洲黄色高清 | 91九色视频观看 | 日韩在线观看一区二区三区 | 亚洲精品在线视频观看 | 精品在线一区二区三区 | 成人久久| 97天堂网 | 一二三区视频在线 | 97超碰在线播放 | 国产免费叼嘿网站免费 | 久久69精品久久久久久久电影好 | 99欧美视频| 在线视频一二三 | 婷婷中文字幕 | 亚洲成色777777在线观看影院 | 99久久久成人国产精品 | 成人免费网视频 | 免费福利影院 | 久久99最新地址 | 久久这里只精品 | 91免费在线看片 | 久久免费视频在线观看 | 亚洲三级精品 | 一区在线观看 | 超级碰99 | 国产免费av一区二区三区 | 国产成人精品在线播放 | 日韩在线视频免费观看 | 人人插人人艹 | 一区二区视 | 麻豆视频免费网站 | 亚洲成人av影片 | 在线观看激情av | 96亚洲精品久久久蜜桃 | 国产成人在线观看免费 | 色偷偷88欧美精品久久久 | 日韩av免费一区二区 | 欧美福利久久 | 亚洲成人av片 | 日韩精品视频久久 | 精品影院一区二区久久久 | 99精品一级欧美片免费播放 | 久久美女视频 | 在线国产视频观看 | 国产亚洲字幕 | 人人澡人人干 | 亚洲黄色免费观看 | 狠狠色丁香婷综合久久 | 久久婷婷精品视频 | 9999精品免费视频 | www黄色av | 在线观看免费av网 | 狠狠干狠狠久久 | 日韩电影一区二区在线观看 | 欧美成人亚洲 | 国产999视频在线观看 | 久草在线免费电影 | 日韩欧美国产精品 | 欧美精品少妇xxxxx喷水 | 一区二区三区视频网站 | 美女视频黄频大全免费 | 国产精品久久久久久久久久直播 | 天天干夜夜擦 | 视频一区二区在线 | 国产精品自产拍在线观看网站 | 深夜国产在线 | 碰超在线97人人 | 99成人免费视频 | 日韩电影一区二区在线 | 久久99精品国产一区二区三区 | 免费三级黄色片 | 91传媒91久久久 | 99色婷婷 | 国产精品色婷婷视频 | 日精品在线观看 | 尤物九九久久国产精品的分类 | 国产精品美女免费视频 | 黄色av三级在线 | 国产日产欧美在线观看 | 激情在线网址 | 国产资源中文字幕 | 国产97在线看 | 一区二区视频免费在线观看 | 福利视频一二区 | 999久久久免费视频 午夜国产在线观看 | 99超碰在线观看 | 日韩av男人的天堂 | 中文字幕最新精品 | 日韩美女黄色片 | 九色精品免费永久在线 | 免费视频你懂的 | 99欧美视频 | 色婷婷福利视频 | 开心激情综合网 | 国产第页 | 中文字幕日韩国产 | 国产一区二区三精品久久久无广告 | 97热在线观看 | 国产日韩欧美在线免费观看 | 久久曰视频 | 91麻豆文化传媒在线观看 | 久久99国产精品 | 国产日韩精品一区二区三区在线 | 中文字幕av最新更新 | 欧美一级黄色视屏 | 成人日批视频 | 成人99免费视频 | 免费在线观看黄色网 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 国产亚洲综合性久久久影院 | 日韩在线观看网址 | 国产精品自产拍 | 女人高潮一级片 | 中文字幕在线观看一区 | 黄色中文字幕在线 | 久久国产欧美日韩精品 | 久久精品直播 | 香蕉精品视频在线观看 | 久久日韩精品 | 视频一区二区三区视频 | 五月激情姐姐 | 中文字幕在线不卡国产视频 | 欧美久久久久久久久久久久久 | 日日夜夜天天干 | 国产人免费人成免费视频 | 激情欧美在线观看 | 日韩性片| 二区中文字幕 | 97精品国产一二三产区 | 久久这里只有精品首页 | 日韩av影视在线观看 | 在线视频你懂得 | 亚洲日本激情 | 91看片成人 | 999一区二区三区 | 碰超在线观看 | 国产黄色成人av | 一区二区欧美激情 | 日韩欧美xxx | 久久伊人八月婷婷综合激情 | 五月婷婷综合在线观看 | 国产精品99久久久久久武松影视 | 久久精品中文字幕免费mv | 夜夜爽www| 亚洲免费不卡 | 亚洲成人精品av | 91中文视频| 91亚洲精品久久久蜜桃 | 蜜臀一区二区三区精品免费视频 | 久久久久免费精品视频 | 我要看黄色一级片 | 超碰在线人人爱 | 国产精品1区2区在线观看 | 国产第一页在线观看 | 久久激情日本aⅴ | 久久久久亚洲精品中文字幕 | 国产小视频在线免费观看视频 | 久久国产精品第一页 | 欧洲亚洲女同hd | 日批在线看| adn—256中文在线观看 | 国产精品一区二区久久 | 精品一二三四五区 | 亚洲 欧美 91| 免费三及片 | 亚洲成a人片77777潘金莲 | www.色国产 | 2021国产在线视频 | 日韩一级片大全 | 中文字幕视频在线播放 | 精品久久五月天 | 96精品视频 | 性色av免费观看 | 成年人视频在线免费观看 | 91久久精品一区二区三区 | 人人爽人人片 | 天天做天天爱天天综合网 | 久久久久免费观看 | 欧美伦理一区 | 91激情视频在线观看 | 91视频网址入口 | 国产精品久久久影视 | 欧美aⅴ在线观看 | 免费在线观看黄网站 | 激情综合五月 | 成年人免费电影在线观看 | 9热精品 | 国产1区2 | 日本性动态图 | 亚洲专区欧美专区 | 99国内精品久久久久久久 | 国产大尺度视频 | av在线官网 | 在线成人观看 | 国产日韩中文字幕在线 | 久久久久久激情 | 91爱爱视频| 国产精品日韩欧美一区二区 | 国产成人一区二区三区免费看 | 黄色字幕网 | 干 操 插 | 色之综合网 | 亚洲国产精品资源 | 久久艹在线观看 | 天天操网站 | 国产精品va最新国产精品视频 | 五月天九九 | 波多野结衣动态图 | 国产精品久久久久影视 | 日日夜夜天天综合 | 91中文字幕网 | 亚洲综合色视频在线观看 | 国产精品乱码久久久久 | 9999精品 | 少妇性aaaaaaaaa视频 | 成人a视频片观看免费 | 91视频在线观看下载 | 国产精品久久久久久久妇 | 国产香蕉久久精品综合网 | 日韩欧美视频免费在线观看 | 亚洲a成人v | 青青河边草免费观看 | av中文字幕av | 久久国产一区二区三区 | 欧美午夜久久 | 欧美久久久久久久久 | 少妇性色午夜淫片aaaze | 一区二区三区四区在线免费观看 | 99福利片| 成人91在线观看 | 欧美日韩国产在线 | 日韩黄色免费 | 日b视频国产 | 国产又粗又硬又长又爽的视频 | 亚洲成av人片在线观看香蕉 | 色香天天 | 国产精品www | 亚洲国产中文字幕在线观看 | 久久无码精品一区二区三区 | 九九在线精品视频 | 91av网址| 在线观看视频在线观看 | 四虎永久免费在线观看 | 97人人超碰在线 | 国产手机在线精品 | 亚洲日本三级 | 成人黄色电影在线播放 | 久热色超碰 | 中文字幕av在线 | 国产精品24小时在线观看 | 99久久国产免费免费 | 在线视频观看国产 | 天天色宗合 | 亚洲精品国偷拍自产在线观看蜜桃 | 最近2019年日本中文免费字幕 | 一本到视频在线观看 | 蜜桃视频在线视频 | 五月婷婷操 | 婷婷精品国产欧美精品亚洲人人爽 | 午夜 在线| 欧美一区二区日韩一区二区 | 福利视频| 天天射天天干天天插 | 色综合久久久久久中文网 | 国产精品99在线观看 | 又黄又刺激视频 | 在线成人中文字幕 | 久草免费看 | 综合色狠狠 | 日本中文字幕观看 | 亚洲色图 校园春色 | 中文字幕资源在线 | 久久精品久久久久电影 | 久久大片网站 | 黄色一级片视频 | 中文字幕在线视频国产 | 97超碰人人澡人人爱 | 激情婷婷六月 | 中文av资源站 | 丁香六月天 | 天天做综合网 | 国产精品欧美日韩在线观看 | 亚洲成av人片在线观看www | 国产九九九视频 | 国产精品一级视频 | 激情亚洲综合在线 | 在线电影a| 国内精品免费久久影院 | 成人av一区二区三区 | 久久国产精品久久精品国产演员表 | avhd高清在线谜片 | 欧美黄在线 | 成人国产在线 | 99在线视频免费观看 | 成 人 a v天堂 | 美女精品网站 | 亚洲国产最新 | 国产精品欧美久久 | 亚洲一级电影 | 色在线亚洲| 婷婷亚洲综合 | 精品a视频| 一二区av | 久久综合国产伦精品免费 | av三级av| 在线观看韩日电影免费 | 亚洲国产综合在线 | 五月综合色 | 日韩一级黄色av | 成人性生交大片免费观看网站 | 免费又黄又爽视频 | 狠狠久久 | 久久精品免视看 | 欧美成a人片在线观看久 | 成人国产精品久久久久久亚洲 | 日日摸日日 | 91亚洲在线 | 欧美91视频 | 欧美福利精品 | 欧美夫妻性生活电影 | 天天爽天天爽夜夜爽 | 成人av在线观 | 免费黄色在线网站 | 亚洲天天摸日日摸天天欢 | 国产精品视频久久久 | 99re国产| 亚洲女欲精品久久久久久久18 | 国产又粗又猛又黄又爽 | 国产一区免费观看 | 久久任你操 | 18岁免费看片 | 五月婷香 | 日日爱网站| 免费在线观看黄色网 | 国产福利精品在线观看 | 国产成人精品一二三区 | 亚洲日本中文字幕在线观看 | 欧美日韩亚洲第一 | 一区三区视频 | 久草资源免费 | 久久久久久久综合色一本 | 成人黄色小视频 | 国产高清永久免费 | 中文永久字幕 | 天天操网站 | www.狠狠操 | 91综合色| 精品国内自产拍在线观看视频 | 国产在线一区观看 | 亚洲免费一级电影 | 亚洲免费国产视频 | 2022中文字幕在线观看 | 免费a现在观看 | 久久99热精品这里久久精品 | 精品视频在线视频 | 久久精品免费电影 | 欧洲av在线| 亚洲精品一区二区18漫画 | 8x成人免费视频 | 欧美日韩在线精品一区二区 | 欧美日韩午夜 | 午夜视频在线观看网站 | 96久久| 天天操天天射天天爱 | 日韩高清在线一区二区 | 欧美xxxxx在线视频 | 精品国产免费人成在线观看 | av不卡网站| 欧美另类重口 | 国产精品久久一区二区三区不卡 | 狠狠色丁香婷婷综合最新地址 | 日韩精品一区二区久久 | 一二区精品| 日韩高清免费在线观看 | 91桃色免费视频 | 韩国视频一区二区三区 | 久久婷婷影视 | 成人黄色av网站 | 亚洲免费国产视频 | 九九免费在线观看视频 | 丁香九月激情综合 | a级国产毛片 | 久久黄色片 | 欧美日韩国内在线 | 亚洲精品一区二区三区四区高清 | 一区二区三区在线视频111 | av先锋中文字幕 | 91成人亚洲 | 国产一区二区影院 | 中文字幕制服丝袜av久久 | 99re久久资源最新地址 | 久久久久亚洲国产精品 | 黄av资源 | 亚洲成人av片 | 国产婷婷精品av在线 | 婷婷丁香狠狠爱 | 国产精品一区二区三区在线播放 | 九九九九免费视频 | 日韩精品视频免费专区在线播放 | 国产亚洲观看 | 国产极品尤物在线 | 精品中文字幕在线播放 | 国产视频一级 | 免费在线观看中文字幕 | 久久久久久美女 | 色综合婷婷 | 欧美一级视频免费 | 成人啪啪18免费游戏链接 | 韩国三级一区 | 久久精品专区 | 美女黄网站视频免费 | 亚洲激精日韩激精欧美精品 | 美女视频a美女大全免费下载蜜臀 | 福利视频午夜 | 久久成人一区 | 激情av资源 | 91视频下载| 日本精品视频在线观看 | 国产精品久久久久久超碰 | 久久tv| 久久午夜影视 | 操操操人人| 亚洲专区一二三 | 成人四虎 | 91精品国产成人 | 麻豆91视频 | 黄色av观看 | 亚洲男女精品 | 久久久久久久久久影视 | 亚洲综合成人专区片 | 国产精品久久久久久999 | 国产精品麻豆三级一区视频 | 亚洲在线视频观看 | 97精品一区 | 国产成人亚洲在线观看 | 天天干天天操天天 | 国产精久久久 | 国产精品二区在线观看 | 国产成人精品一二三区 | 午夜丰满寂寞少妇精品 | 四虎国产精品免费 | 男女拍拍免费视频 | 中文字幕五区 | 青青河边草观看完整版高清 | 伊人久久精品久久亚洲一区 | 2024av| 国产不卡一二三区 | 日日夜夜91 | 激情综合亚洲 | 国产精国产精品 | 成人国产精品一区 | 手机在线观看国产精品 | 欧美日韩国产综合网 | 很污的网站 | 免费在线观看视频a | 91伊人影院 | 手机看片福利 | 国产成人精品在线 | 97视频在线观看视频免费视频 | 国产精品9区 | 干av在线 | 国产视频第二页 | 久久精品男人的天堂 | 久一网站 | 亚洲精品国产欧美在线观看 | 国产精品久久久久久久久久免费 | 91精品国产福利在线观看 | 亚州精品天堂中文字幕 | 欧美日韩性视频在线 | 国产一级二级三级视频 | 国产精品一二 | 91亚洲国产成人 | 69绿帽绿奴3pvideos | 在线观看的av网站 | 久久久成人精品 | 九色91在线视频 | 超碰在线人人艹 | 激情综合中文娱乐网 | 婷婷色中文 | 日韩精品欧美视频 | 一级黄色毛片 | 日本少妇视频 | 成人午夜电影在线观看 | 激情丁香综合 | av解说在线| 免费黄色一区 | 久久久久久久久久久久久国产精品 | 日韩一区二区三免费高清在线观看 | 日韩欧美高清一区二区三区 | 国产打女人屁股调教97 | 国产又粗又猛又色又黄网站 | 久久在线精品视频 | 久久免费视屏 | 麻豆视频大全 | 一级黄色大片在线观看 | 狠狠狠狠狠狠狠狠干 | 91成人精品视频 | 最新国产在线视频 | 亚洲粉嫩av | 久久免费视频网 | 99精品视频免费看 | 九九免费在线观看 | 日韩av手机在线观看 | 日本精品久久久久中文字幕 | 久久99国产视频 | 色五月成人| 精品视频专区 | 成人中文字幕在线观看 | 丁香五婷 | 久草在线播放视频 | 国产日产高清dvd碟片 | 精品在线观看一区二区 | 久久视频中文字幕 | 精品国产一区二区三区久久久蜜臀 | 欧美网站黄色 | 日韩欧美精品在线 | 人人狠狠 | 456免费视频| 夜夜狠狠 | 国产免费又粗又猛又爽 | 高清一区二区 | 91精品国产九九九久久久亚洲 | 国产精品去看片 | 99婷婷狠狠成为人免费视频 | 午夜久久福利视频 | 久久黄色免费观看 | 成人黄色电影在线播放 | 一级片色播影院 | 精品亚洲二区 | 精品亚洲欧美无人区乱码 | 日韩精品偷拍 | 国产成人精品亚洲精品 | 亚洲精品高清一区二区三区四区 | 日韩精品aaa | 亚洲综合色婷婷 | 99久久99久久精品国产片 | 丝袜美女视频网站 | 天堂av观看 | 欧美成a人片在线观看久 | 国产黄色资源 | 中文字幕色在线 | 国产在线观看免费观看 | 欧美日韩国产一区二区三区在线观看 | 日韩精品久久久久久中文字幕8 | 国产一区二区三区免费在线观看 | 国产 欧美 日产久久 | 欧美激情精品久久 | 在线观看视频99 | 国产 字幕 制服 中文 在线 | 国产高清专区 | 免费亚洲精品视频 | 五月婷婷激情网 | 欧美国产精品久久久久久免费 | 久久综合欧美精品亚洲一区 | 高清免费在线视频 | 中文字幕成人在线 | 成人资源在线 | 亚洲国产精彩中文乱码av | 日日夜夜精品免费 | 四虎影视www | 亚洲国产中文字幕在线视频综合 | 九九热精 | 中文字幕在线播放第一页 | 中文字幕乱码在线播放 | 久久精品国产一区 | 看片的网址 | www.色午夜,com | 人人玩人人添人人澡97 | 激情视频免费观看 | 午夜精品久久久久久中宇69 | 香蕉影院在线观看 | 免费日韩一级片 | 精品免费一区二区三区 | 免费的黄色的网站 | 超碰在线1 | 国产精品欧美久久久久久 | 99精品视频在线看 | 免费看色网站 | 青春草免费视频 | 日韩成人免费在线电影 | 国产色视频一区 | 国产精品手机在线播放 | 国产精品福利视频 | 久久精品视频免费播放 | 日韩精品资源 | 久久久久免费电影 | 99麻豆久久久国产精品免费 | 亚洲特级毛片 | 国产精品美女久久久免费 | 日本黄色a级大片 | 热久久免费视频精品 | 又长又大又黑又粗欧美 | 999久久国产精品免费观看网站 | 亚洲午夜精品一区 | 插综合网| 天天做日日爱夜夜爽 | 亚洲视频免费在线观看 | 亚洲午夜电影网 | av无限看| 欧美精品乱码久久久久久按摩 | 国产在线观看你懂的 | 久久精品成人欧美大片古装 | 99视频国产在线 | 久久欧美精品 | 亚洲综合小说电影qvod | 国产精品每日更新 | 日韩av在线看| 久久免费毛片视频 | 操久在线| 久久久三级视频 | 欧美激情操| 色婷婷久久一区二区 | 精品99在线 | 欧美粗又大 | 91超碰在线播放 | 91成人在线观看高潮 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 91在线免费观看网站 | 成人免费在线观看av | 久久久www成人免费精品 | 91精品爽啪蜜夜国产在线播放 | 日韩在线视频不卡 | a黄色影院 | 中文亚洲欧美日韩 | 99精品黄色片免费大全 | 天干啦夜天干天干在线线 | 三级黄在线 | 五月天婷婷免费视频 | 天天操天天摸天天射 | 日韩av一区二区在线 | 亚洲麻豆精品 | 天天干天天操天天射 | 欧美日韩国产成人 | 国产精品一区二区视频 | 特级a毛片| 日日干精品| 日本久久久久久久久 | 美女免费视频一区 | 亚洲精品高清视频在线观看 | 91经典在线| 精品99在线观看 | 91免费观看 | 久久经典国产 | 日本久久不卡视频 | 91视频在线观看大全 | 中文字幕av免费在线观看 | 久久99精品国产91久久来源 | 日韩免费小视频 | 97精品电影院 | 岛国大片免费视频 | 日韩动漫免费观看高清完整版在线观看 | 在线免费高清一区二区三区 | 视频1区2区 | 国产黄色大片 | 国产精品美女 | 中文字幕一区二区三区四区 | 久久伦理网 | 日本精品视频网站 | 亚洲日本一区二区在线 | av午夜电影 | 最近中文字幕在线 | 四虎影视成人精品国库在线观看 | 91精品国自产在线偷拍蜜桃 | 中文字幕丝袜美腿 | 日韩69视频 | 久久av中文字幕片 | 国产蜜臀av | 国产视频一区精品 | 久久久在线 | 中文在线8新资源库 | av不卡中文| 99在线免费视频 | 视频二区在线 | 国产一区二区免费看 | 又黄又爽又色无遮挡免费 | 999国产 | 探花视频免费观看高清视频 | 国产精品久久伊人 | 婷婷丁香自拍 | 国产小视频你懂的在线 | 伊人色综合久久天天 | 久久最新网址 | 最近高清中文字幕在线国语5 | 天天天天爱天天躁 | 中文字幕精品三区 | 国产在线一区观看 | 亚洲成a人片在线观看网站口工 | 欧美另类美少妇69xxxx | 亚洲无吗视频在线 | 亚洲另类交 | 成人av高清在线 | 在线小视频你懂得 | 久久久福利 | 国产精品一区二区在线 | 激情综合网五月婷婷 | 碰超人人 | 成人久久久久久久久久 | 91九色成人 | 国产九九热 | 中文字幕一区二区三区在线观看 | 99视频这里有精品 | 日韩精品一区二区三区丰满 | 热热热热热色 | 国产精品激情偷乱一区二区∴ | 亚洲综合精品视频 | 中文字幕中文字幕 | 久久精品系列 | 国产中文视频 | 久草青青在线观看 | 免费国产在线精品 | 99性视频| 久久成人在线 | 在线观av| 91丝袜美腿| 国产手机在线播放 | 天天翘av | 狠狠躁日日躁夜夜躁av | 亚洲激情六月 | 精品999久久久 | 免费看一级片 | 天天曰天天干 | 91看片在线免费观看 | 成人在线观看影院 | 国产麻豆精品一区二区 | 国产精品久久久久久69 | 日韩精品欧美专区 | 欧美激情视频一二三区 | 国产成人精品福利 | 国产婷婷久久 | 婷婷激情久久 | 国产精品a成v人在线播放 | 天天插天天干 | 日韩中文字幕免费视频 | 婷婷看片| 操操操人人 | 亚洲成人午夜在线 | 亚洲婷婷在线视频 | av超碰在线 | 久久久久久久久久久精 | 国内精品免费 | 欧美在线aa| av五月婷婷 | 久草a在线 | 精品99视频 | 日韩丝袜视频 | 精品黄色在线 | 手机成人av在线 | 日韩丝袜 | 欧美久久久久 | 91日韩精品视频 | 能在线观看的日韩av | 日韩视频在线不卡 | 99久久综合国产精品二区 | 亚洲人成人天堂h久久 | 在线观看91久久久久久 | av一级片在线观看 | 日日干夜夜爱 | 久久久久久久久久免费 | 中文字幕在线观看国产 | 日韩欧美成 | 色悠悠久久综合 | 日韩伦理片一区二区三区 | av在线播放网址 | 免费的国产精品 | 日韩精品aaa | 天天色天天综合 | 成人免费看视频 | 依人成人综合网 | av综合站 | 成人国产电影在线观看 | 99久久夜色精品国产亚洲 | 丁香花中文字幕 | 午夜久久成人 | av免费在线观 | 97视频在线观看播放 | 久草影视在线观看 | 91成人破解版 | 一区二区三区精品久久久 | 福利一区二区三区四区 | 国产自产高清不卡 | ww亚洲ww亚在线观看 | 日韩视频免费观看高清 | 99这里只有精品视频 | 最新中文字幕在线观看视频 | 天天操天天操天天操天天 | 黄色三级免费观看 | 欧美精品久久人人躁人人爽 | 91在线产啪 | 日韩高清不卡在线 | 日日狠狠| 91成人网在线 | 久久中国精品 | 天天爱天天 | 欧美黄色软件 | 成人黄色小说网 | 麻豆影视网站 | 亚洲精品在线视频播放 | 91精品国产欧美一区二区 | 欧美精品三级在线观看 | 99久久www免费 | 18做爰免费视频网站 | 99视频在线看 | 久久网站av | a电影免费看 | 久久午夜鲁丝片 | 99精品热 | 激情视频一区二区三区 | 黄网站污 | 综合网婷婷 | 日韩区欠美精品av视频 | 欧美精品三级在线观看 | 波多野结衣一区 | 国产精品久久久久久麻豆一区 | 天天av天天 | 日韩精品一卡 | 久热只有精品 | 在线免费观看一区二区三区 | 国产一区二区在线视频观看 | 2024国产精品视频 | 国产午夜精品一区二区三区在线观看 | 日韩欧美在线高清 | 国内三级在线观看 | 久久精品香蕉 | 国产精品综合久久久久久 | 一区二区理论片 | 久草电影在线观看 | 久综合网| 少妇视频一区 | 色网站免费在线看 | 日韩电影一区二区三区 | 亚洲精品欧美成人 | 亚洲精品看片 |