精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

當(dāng)前值得了解的七大優(yōu)秀Java微框架

譯文 精選
開發(fā)
Java微框架素以輕量化、極簡設(shè)計聞名,專注于性能、云原生功能與開發(fā)者體驗,不僅適用于構(gòu)建輕量級Web應(yīng)用程序,且特別適配微服務(wù)架構(gòu)。除了最主流的Spring Boot之外,更有多種框架能夠滿足不同需求。本文簡要介紹七款功能獨特、簡潔易用的Java微框架。

譯者 | 核子可樂

審校 | 重樓

Java微框架素以輕量化、極簡設(shè)計聞名,專注于性能、云原生功能與開發(fā)者體驗,不僅適用于構(gòu)建輕量級Web應(yīng)用程序,且特別適配微服務(wù)架構(gòu)。除了最主流的Spring Boot之外,更有多種框架能夠滿足不同需求。本文簡要介紹七款功能獨特、簡潔易用的Java微框架。

框架

人氣(GitHub星數(shù))

關(guān)鍵優(yōu)勢

GitHub鏈接

Spring Boot

~78.2K

行業(yè)標(biāo)準,輕量化

https://github.com/spring-projects/spring-boot

Quarkus

~14.8K

快速啟動,低內(nèi)存占用

https://github.com/quarkusio/quarkus

Vert.x

~14.6K

高并發(fā),非阻塞

https://github.com/eclipse-vertx/vert.x

Ktor

~13.9K

協(xié)程設(shè)計,高靈活性

https://github.com/ktorio/ktor

Dropwizard

~8.4K

穩(wěn)定“內(nèi)置battery”

https://github.com/dropwizard/dropwizard

Javalin

~8K

極致簡潔,API精簡

https://github.com/javalin/javalin

Micronaut

~6.3K

無reflection,高效

https://github.com/micronaut-projects/micronaut-core

Helidon

~3.7K

由甲骨文支持,符合標(biāo)準

https://github.com/helidon-io/helidon

Quarkus

Quarkus是一款現(xiàn)代云原生框架,擁有出色的開發(fā)模式、功能豐富的可插拔架構(gòu),可基于GaalVM或Mandrel實現(xiàn)原生構(gòu)建,尤其適合熟悉Spring并希望快速啟動及原生編譯的開發(fā)者。

Quarkus還提供CLI。在安裝完成后,用戶可使用quarkus create開發(fā)應(yīng)用程序。若以開發(fā)模式啟動應(yīng)用程序,框架還會熱部署代碼變更并生成開發(fā)控制臺:

Quarkus提供多種擴展,包括日志記錄、指標(biāo)、身份驗證及數(shù)據(jù)存儲。開發(fā)者可使用UI進行管理,并通過CLI進行添加和刪除。

Quarkus通過Vert.x支持命令式及響應(yīng)式編程,允許大家在同一應(yīng)用之內(nèi)使用這兩種編程風(fēng)格,且直接支持端點虛擬線程。

Quarkus還提供基于Jakarta EE標(biāo)準的CDI注入框架,在構(gòu)建時解析這些依賴項,以避免因運行時解析而引發(fā)的速度減慢。

以下為Quarkus中的簡單端點:

import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;

@Path("/hello")
public class GreetingResource {

    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String hello() {
        return "Hello from InfoWorld!";
    }
}

Quarkus完美契合開發(fā)需求,且提供豐富的額外功能,是一套簡潔但功能多樣、注重開發(fā)者體驗的框架方案。

Vert.x

Vert.x是Java中最早也最成熟的響應(yīng)式框架之一,可創(chuàng)建高性能響應(yīng)式管線所需要的一切,尤其適合需要以高性能處理高吞吐量數(shù)據(jù)流的項目。

Vert.x與其說是一套框架,不如說是一套用于編寫響應(yīng)式流的精簡工具。包括Quarkus在內(nèi)的多種工具和框架都以Vert.x為構(gòu)建基礎(chǔ),可提供強大且廣泛的功能選項。

Vert.x基于事件循環(huán)架構(gòu),旨在盡量減少CPU閑置。在此架構(gòu)之上,Vert.x提供多種異步編程處理方式,還支持RxJava中的大量操作符與復(fù)雜的響應(yīng)式結(jié)構(gòu)。

雖然Vert.x使用事件循環(huán),但卻并不局限于單線程,允許開發(fā)者同時實現(xiàn)異步處理與多線程處理。在這種多Reactor機制中,每個CPU核心往往對應(yīng)一個事件線程(遠優(yōu)于Node等框架)。此外,我們還可以微調(diào)應(yīng)用以創(chuàng)建多個handler類(即verticles),以在單個節(jié)點內(nèi)進行擴展。

Vert.x還支持Kotlin語言,允許原生使用Kotlin協(xié)程進行異步事件處理。Vert.x支持的其他語言包括Groovy、Ruby、Java,并可通過WebSocket在客戶端上使用JavaScript。

以下為Vert.x端點示例:

import io.vertx.core.AbstractVerticle;
import io.vertx.core.Promise;
public class MainVerticle extends AbstractVerticle {

  @Override
  public void start(Promise<Void> startPromise) throws Exception {
    vertx.createHttpServer().requestHandler(req -> {
      req.response()
        .putHeader("content-type", "text/plain")
        .end("Hello from Vert.x!");
    }).listen(8888, http -> {
      if (http.succeeded()) {
        startPromise.complete();
        System.out.println("HTTP server started on port 8888");
      } else {
        startPromise.fail(http.cause());
      }
    });
  }
}

Vert.x還提供復(fù)雜的事件總線,可在微服務(wù)應(yīng)用的節(jié)點內(nèi)與節(jié)點間進行通信。我們可以將事件總線視為Vert.x節(jié)點的輕量級分布式消息系統(tǒng)。如果需要升級至持久化消息代理,Vert.x還支持包括RabbitMQ在內(nèi)的多種集成。

Vert.x還為許多常用數(shù)據(jù)庫(如MongoDB)提供設(shè)計精良且性能卓越的連接器,以及與這些數(shù)據(jù)存儲集成的授權(quán)與身份驗證組件。

與Spring Initializr類似,Vert.x還提供基于Web的工具以構(gòu)建新應(yīng)用:

在需要消費、連接和生成實時數(shù)據(jù)流的場景下,Vert.x堪稱絕佳選擇,也是Java生態(tài)中最先進、最成熟的響應(yīng)式平臺之一。

Ktor

Ktor是由Jetbrains專為Kotlin構(gòu)建的獨特框架,提供一系列面向Web開發(fā)的可組合功能,并利用Kotlin協(xié)程進行異步編程。

Ktor CLI包含功能完備的創(chuàng)建向?qū)В捎糜趩有聭?yīng)用(ktor new):

Ktor是一套模塊化框架,支持多種插件(即features)。除依賴注入引擎koin之外,還提供監(jiān)控、管理、數(shù)據(jù)存儲連接器與安全等多種功能,且全部整合在Ktor統(tǒng)一框架之下。

Ktor提供強大功能,包括用于生成HTML的Kotlin DSL——一種常用且便捷的數(shù)據(jù)驅(qū)動標(biāo)記生成方法。Ktor最強大的功能,在于它隱式使用到Kotlin協(xié)程,能夠透明地讓非阻塞異步操作趨近于同步操作。例如,以下代碼看似阻塞(在client.get()調(diào)用當(dāng)中),但實際上卻是完全異步的:

import io.ktor.client.*
//... other imports
routing {
  get("/") {
    try {
      // Implicit coroutine use:
      val book = client.get("https://anapioficeandfire.com/api/books/1").body<Book>()
      call.respond(book)
    } catch (e: Exception) {
      call.respondText("Error fetching book: ${e.message}")
    }
  }
}

Ktor是一款功能全面的工具,可用于構(gòu)建各種服務(wù)器端Kotlin功能。雖然其最出名的功能是將協(xié)程引入Web server,但其他方面的表現(xiàn)也不落下風(fēng),尤其適合對功能完備性要求較高的Kotlin開發(fā)者。

Dropwizard

Dropwizard是一款成熟的輕量級框架,專為云環(huán)境中的現(xiàn)代RESTful服務(wù)而設(shè)計。除了在應(yīng)用中嵌入Jetty server以支持獨立可運行對象之外,它還整合了用于JSON的Jackson和用于端點定義的Jersey。除此之外,開發(fā)者還可添加組件以處理持久性及其他常見的應(yīng)用需求。

Dropwizard最重要的功能之一,是其基于Metrics(由項目團隊構(gòu)建的庫)的內(nèi)置運維指標(biāo)。Metrics是一款功能完備的監(jiān)控工具,可與應(yīng)用相集成,并提供Graphite等常見庫依賴項與后端。

Dropwizard本質(zhì)上是一套膠水框架,將眾多項目整合到統(tǒng)一的軟件包內(nèi),消除了自行編排的麻煩過程:

以下是Dropwizard中的端點:

import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.MediaType;

@Path("/hello")
@Produces(MediaType.TEXT_PLAIN)
public class HelloResource {

    @GET
    public String sayHello() {
        return "Hello from InfoWorld!";
    }
}

可以看到,Dropwizard將大部分路由任務(wù)交給了來自Jakarta項目的Jersey。

Dropwizard是一套囊括多種一流工具的輕量化、統(tǒng)一且支持云環(huán)境的框架,且高度重視穩(wěn)定性和監(jiān)控功能。

Javalin

Javalin是一款微框架,適合追求極致簡潔的開發(fā)者。

Javalin是SparkJava的繼任者,后者又是首批面向JVM的開源微框架之一,更多強調(diào)簡潔性與靈活性。與其他現(xiàn)代框架不同,Javalin力求不帶任何立場,而且在定位上更類似于庫。由于Javalin盡力避免隱藏的依賴關(guān)系(即magic),并將所有內(nèi)容明確在代碼中做出描述,因此不再提供依賴注入或代碼掃描。

與Dropwizard類似,Javalin也嵌入了Jetty server,借此提供高度可靠且性能出色的HTTP平臺:

這是一套支持Java和Kotlin的多語言框架,下面來看用Kotlin編寫的簡單Hello World服務(wù)器:

import io.javalin.Javalin
fun main() {
    val app = Javalin.create(/*config*/)
        .get("/") { ctx -> ctx.result("Hello World") }
        .start(7070)
}

以下為Java版本:

import io.javalin.Javalin;
public class App {
    public static void main(String[] args) {
        var app = Javalin.create()
            .get("/", ctx -> ctx.result("Hello World"))
            .start(7070);
    }
}

可以看到,其方法轉(zhuǎn)換流暢、代碼簡潔,允許同時描述服務(wù)器定義與端點。

Javalin避免了代碼臃腫和其他不必要的依賴語法。如果大家需要一款極簡框架來完成工作,Javalin也許正是最佳選項。

Micronaut

如果大家對啟動時間非常關(guān)注,或者需要一款可以構(gòu)建微服務(wù)和無服務(wù)器應(yīng)用的多語言全棧框架,那么Micronaut絕對值得一試。它提供AOT編譯器,無需reflection即可實現(xiàn)高性能與依賴注入,既可在JVM中運行、也可通過GraalVM編譯為原生鏡像。

Micronaut IoC(控制反轉(zhuǎn))容器會在編譯期間解析所有依賴項,借此縮短啟動時間,更好地匹配微服務(wù)設(shè)計需求。這樣也能讓依賴注入的內(nèi)存占用量更小。

Micronaut支持多種語言,包括Java、Groovy和Kotlin,后續(xù)還計劃支持Scala。

Micronaut專為云環(huán)境設(shè)計,能夠與K8s等自動集成服務(wù)發(fā)現(xiàn)功能,且支持Jaeger等跟蹤功能。如此無需硬編碼,即可通過配置自動發(fā)現(xiàn)和跟蹤來設(shè)計微服務(wù)。它還支持Consul等分布式配置。

Micronaut內(nèi)置數(shù)據(jù)存儲連接器,且支持數(shù)據(jù)訪問層與OpenAPI描述符。

盡管Micronaut擁有諸多高級功能,但其端點仍保持了簡潔易讀:

import io.micronaut.http.annotation.Controller;
import io.micronaut.http.annotation.Get;
@Controller("/hello")
public class HelloController {

    @Get("/{name}")
    public String hello(String name) {
        return "Hello, " + name;
    }
}

Micronaut是微服務(wù)的理想之選,致力于讓開發(fā)過程盡量輕松,堪稱Java生態(tài)中最精細的微服務(wù)框架。

Helidon

Helidon最適合的,是那些希望遵循Java標(biāo)準、面向企業(yè)環(huán)境使用,并擁有豐富框架類型選擇的開發(fā)者。

Helidon既是本文中最年輕的框架選項,也是甲骨文的官方項目。它在設(shè)計之初就引入了虛擬線程和構(gòu)建時依賴注入,最近還添加了AI相關(guān)功能。

Helidon提供兩個版本:

  • SE(標(biāo)準版):用于構(gòu)建函數(shù)式編程(FP)微服務(wù)的基礎(chǔ)工具集合。專注于極小的內(nèi)存占用和快速啟動,且從Helidon 4開始默認使用虛擬線程。
  • MP(MicroProfile):基于SE構(gòu)建并提供增值功能,包括依賴注入和JAX-RS/JSON-P等Jakarta EE組件。

Helidon SE與Javalin類似,MP則在理念和功能設(shè)計上更接近Quarkus。采用虛擬線程意味著省去了復(fù)雜的并發(fā)模型,因此應(yīng)用節(jié)點更易于理解和管理。

下面來看Helidon SE端點示例:

import io.helidon.webserver.WebServer;
import io.helidon.webserver.http.HttpRouting;
public class Main {
  public static void main(String[] args) {
    HttpRouting routing = HttpRouting.builder()
      .get("/hello", (req, res) -> res.send("Hello from InfoWorld!"))
      .build();

    WebServer.builder()
      .routing(routing)
      .port(8080)
      .build()
      .start();
  }
}

Helidon最核心的優(yōu)勢在于符合甲骨文標(biāo)準,并提供多種模型選擇。無論是選擇SE進行簡單DIY,還是選擇MP擁有完善的一體化框架,Helidon都擁有不俗的吸引力。

總結(jié)

Java生態(tài)極其豐富,能夠?qū)崿F(xiàn)從簡單API到復(fù)雜微服務(wù)集群、無服務(wù)器部署乃至全棧應(yīng)用的各類現(xiàn)代云環(huán)境開發(fā)需求。本文列出的所有微框架都非常可靠,如果你不知如何選擇,可以先確定一、兩種最符合需求的框架,然后深入研究代碼。它們在功能性上各具優(yōu)勢,也許最終考驗的會是其各不相同的開發(fā)體驗。

原文標(biāo)題:The best Java microframeworks to learn now,作者:Matthew Tyson

責(zé)任編輯:龐桂玉 來源: 51CTO
相關(guān)推薦

2021-05-24 09:00:00

ETL工具數(shù)據(jù)

2021-01-04 09:00:00

JavaScript開發(fā)Web

2020-11-23 18:39:54

容器Kubernetes架構(gòu)

2018-10-09 14:34:58

開源KubernetesGit

2022-11-01 15:13:41

2023-07-11 15:57:15

數(shù)據(jù)產(chǎn)品產(chǎn)品經(jīng)理

2012-08-06 10:34:26

JavaScript框架

2024-07-31 16:04:14

2019-01-31 09:02:56

網(wǎng)頁抓取設(shè)計模式數(shù)據(jù)

2021-08-05 17:59:45

Vue 3.0前端代碼

2012-08-06 10:51:40

JavaScript

2021-09-17 13:17:56

Spring 模塊開發(fā)

2013-09-23 09:43:01

編程編程實驗

2021-09-30 14:06:08

安全團隊網(wǎng)絡(luò)攻擊首席信息安全官

2014-08-19 14:12:47

Windows

2018-09-19 22:35:25

2013-08-05 09:38:44

2012-12-28 14:38:36

2022-01-03 15:56:43

加密貨幣數(shù)字貨幣貨幣

2021-02-26 09:00:00

開發(fā)Web技術(shù)
點贊
收藏

51CTO技術(shù)棧公眾號

日韩成人动漫| 五月婷婷综合久久| 99国产精品一区二区| 91精品国产综合久久久久久漫画| 波多野结衣三级在线| 性欧美8khd高清极品| 午夜在线视频一区二区区别| 最近中文字幕日韩精品| 色男人天堂av| 韩国成人动漫| 亚洲精选视频在线| 欧美精品二区三区四区免费看视频| 18国产免费视频| 国产精品激情电影| 一区二区亚洲精品国产| 久久久久久久人妻无码中文字幕爆| 久久99久久99精品免观看软件| 亚洲欧美偷拍卡通变态| 日本不卡久久| 国产 日韩 欧美 精品| 日韩1区2区日韩1区2区| 国模gogo一区二区大胆私拍| 天天操天天干天天操天天干| 精品国产影院| 欧美一级高清片在线观看| 黄色一级大片在线观看| 福利成人导航| |精品福利一区二区三区| 免费影院在线观看一区| 亚洲精品无amm毛片| 久久国产精品区| 国产成人aa精品一区在线播放| 久久精品www人人爽人人| 久久国产影院| 亚洲欧美日本另类| 亚洲激情 欧美| 午夜精品在线| 欧美一级高清片| 国内av一区二区| 亚洲精品成人一区| 欧美喷水一区二区| 三级a在线观看| 亚洲精品中文字幕| 精品久久久久久| cao在线观看| 成人影院在线播放| 一区二区三区免费在线观看| 在线观看视频黄色| 岛国中文字幕在线| 亚洲欧美日韩国产中文在线| 欧美精品一区二区视频 | 久久精品国产在热久久| 日韩av免费在线看| 人人草在线观看| 国产精品资源| 欧美有码在线视频| 亚洲欧美偷拍一区| 久久综合九色| 国产精品日韩久久久久| 这里只有久久精品视频| 日本一不卡视频| 国产精品91一区| 懂色av中文字幕| 麻豆精品新av中文字幕| 国产综合视频在线观看| 国产影视一区二区| 国产乱码精品一区二区三区忘忧草| 成人欧美一区二区三区在线| 国产免费久久久| 国产成人在线观看免费网站| 国产亚洲精品自在久久| 天堂在线中文| 国产欧美一区二区在线| 五月天色一区| 高潮毛片在线观看| 亚洲图片自拍偷拍| 国产高清精品在线观看| 成人h在线观看| 欧美一级xxx| 真人bbbbbbbbb毛片| 国产精品日韩精品中文字幕| 最近2019中文字幕一页二页| 国产精品成人免费观看| 在线视频精品| 国产精品偷伦视频免费观看国产 | 亚洲欧美在线磁力| 中文字幕黄色网址| 国产精品分类| 国产精品精品久久久| 国产免费的av| 99热99精品| 一区在线电影| 欧美私密网站| 51精品久久久久久久蜜臀| 亚洲精品久久久久久| 亚洲制服欧美另类| 久久激情五月丁香伊人| 国产精品999久久久| 日韩成人精品在线| 波多野结衣一区二区三区在线观看| 四虎国产精品永远| 亚洲人成亚洲人成在线观看图片| 日韩精品xxxx| 色999韩欧美国产综合俺来也| 亚洲黄色在线观看| 任你操精品视频| av成人天堂| 96精品久久久久中文字幕| 男人天堂综合| 亚洲午夜在线观看视频在线| 国产精品入口免费软件| 国产亚洲成av人片在线观黄桃| 中文字幕精品网| 欧美精品二区三区| 国产乱对白刺激视频不卡| 欧美一区二区三区在线播放| 中文字幕中文字幕在线十八区| 日本福利一区二区| 在线观看成人动漫| 欧美在线看片| 国产精品一区二区久久国产| 四虎影视精品成人| 亚洲最新视频在线播放| 亚洲美女性囗交| 国产午夜一区| 日本中文字幕久久看| 亚洲乱熟女一区二区| 1024国产精品| 超碰成人在线播放| 色综合色综合| 日本亚洲欧美成人| 亚洲欧洲视频在线观看| 一区二区三区视频在线看| 国产成人美女视频| 精品国产乱码| 日韩女优在线播放| 色网站在线免费观看| 欧美日韩色婷婷| 麻豆精品国产传媒av| 国内精品久久久久久久影视麻豆 | 性感美女视频一二三| 亚洲自拍偷拍图区| 潘金莲一级淫片aaaaaaa| 国产精品久久天天影视| 国产一区二区在线免费| 欧美天天影院| 666欧美在线视频| 国精产品一区一区二区三区mba| 日本成人超碰在线观看| 亚洲国产精品www| 国产亚洲精彩久久| 最近2019中文字幕mv免费看| 在线免费观看中文字幕| 国产精品理论片| 婷婷中文字幕在线观看| 中国成人一区| 丁香五月网久久综合| 黄页网站大全在线免费观看| 精品福利一二区| 日本学生初尝黑人巨免费视频| 成人免费视频网站在线观看| 日本男女交配视频| 麻豆一区二区麻豆免费观看| 欧美一区二区三区……| 嫩草精品影院| 欧美日韩国产片| 国产盗摄一区二区三区在线| 成人一级视频在线观看| 成人免费aaa| 国产日产精品一区二区三区四区的观看方式 | 久久国产精品久久久久久电车| 青青草国产精品| 玖玖精品在线| 欧美大片在线看免费观看| 人人妻人人澡人人爽精品日本| 性做久久久久久免费观看欧美| 好吊日免费视频| 久久香蕉精品| 小说区视频区图片区| av男人一区| 国产精品1234| 亚洲按摩av| 精品视频久久久久久| 一卡二卡在线观看| 亚洲午夜羞羞片| 国产91丝袜美女在线播放| 精品一区二区在线观看| 国产小视频免费| 精品国产一区二区三区小蝌蚪| 91免费在线视频| 中文在线免费二区三区| www亚洲精品| 五月婷婷丁香花| 欧美美女喷水视频| 特一级黄色大片| 亚洲欧美偷拍三级| 91精品人妻一区二区三区蜜桃欧美| 久久狠狠亚洲综合| 亚洲熟妇av一区二区三区漫画| 日韩久久久久| 精品无人区一区二区三区| 欧美黄页免费| 欧美主播福利视频| 污影院在线观看| 深夜福利亚洲导航| 天堂成人在线| 欧美一级片免费看| 日韩欧美国产另类| 亚洲成av人片一区二区| 日本黄色录像视频| 97久久精品人人做人人爽| 亚洲国产日韩在线一区| 日韩电影在线看| 欧美亚洲精品一区二区| 一区二区三区四区电影| 日韩中文不卡| 日本成人a网站| 91入口在线观看| 欧美黄页在线免费观看| 国产国语videosex另类| 国产调教在线| 欧美激情综合色综合啪啪五月| 一级日本在线| 亚洲天堂网在线观看| 日韩在线视频第一页| 欧美一级二级三级乱码| 国产精品福利电影| 欧美三区免费完整视频在线观看| 亚洲婷婷综合网| 精品露脸国产偷人在视频| 国产亚洲精品av| 亚洲精品一二三区| 极品美妇后花庭翘臀娇吟小说| 日本一区二区久久| 九色porny自拍视频| 91一区一区三区| 人妻无码中文久久久久专区| 成人动漫一区二区| 91精产国品一二三| 国产精品一区久久久久| 永久免费黄色片| 国产麻豆精品久久一二三| 波多野结衣在线免费观看| 激情五月激情综合网| 午夜剧场在线免费观看| 久久国产精品免费| 91精产国品一二三产区别沈先生| 麻豆国产91在线播放| 色婷婷成人在线| 久久精品国产精品青草| 日韩欧美国产片| 国精产品一区一区三区mba桃花 | 国产精品第5页| 色综合天天性综合| japanese国产在线观看| 精品视频一区二区不卡| 国产精品老熟女视频一区二区| 9191精品国产综合久久久久久| 国产精品久久影视| 欧美成人福利视频| 免费看国产片在线观看| 亚洲国产福利在线| 男人av在线| 一区二区三区亚洲| 超碰在线caoporn| 欧美精品videos性欧美| 日韩精品极品| 国产精品亚发布| 欧美一级大片在线视频| 国产精品麻豆免费版| 亚洲丝袜啪啪| 伊人久久大香线蕉午夜av| 中文av一区| 欧洲黄色一级视频| 轻轻草成人在线| 色黄视频免费看| av电影天堂一区二区在线| 亚洲一区视频在线播放| 亚洲欧美在线观看| 国产一级做a爱免费视频| 精品女同一区二区三区在线播放| 国产一卡二卡三卡| 欧美一区二区三区免费视频| 天堂成人在线观看| 在线成人激情黄色| 在线不卡日本v二区707| 热久久美女精品天天吊色| 婷婷久久免费视频| 精品午夜一区二区三区| 色爱综合网欧美| 久久综合色视频| 国产又黄又大久久| 网站免费在线观看| 成人欧美一区二区三区白人| 日韩黄色三级视频| 欧美日韩国产不卡| 天天舔天天干天天操| 色婷婷综合久久久久| 看黄在线观看| 亚洲一区二区三区视频| 中文精品一区二区| www插插插无码免费视频网站| 视频一区二区中文字幕| 熟女人妻一区二区三区免费看| 国产日本欧洲亚洲| 久久久精品99| 欧美日韩成人一区二区| 日本成人一区二区三区| 欧美成人亚洲成人日韩成人| 日韩一区二区三区免费| 国产一级特黄a大片99| 欧美国产一级| 农村妇女精品一二区| 北条麻妃一区二区三区| 潘金莲一级黄色片| 在线精品亚洲一区二区不卡| 手机av在线免费观看| 欧美理论片在线观看| 久久精品黄色| 欧美污视频久久久| 亚洲欧美日韩国产| 99精品一区二区三区无码吞精| 亚洲天堂免费看| 中文字字幕在线观看| 亚洲男人的天堂网站| 捆绑调教日本一区二区三区| 国产精品麻豆免费版| 欧美精品二区| 欧美国产日韩另类 | 亚洲精品国产福利| 日本在线观看大片免费视频| 成人夜晚看av| 婷婷色综合网| 在线观看免费不卡av| 欧美国产乱子伦| 中文字幕免费播放| 亚洲人成电影网站色xx| 一区一区三区| 免费在线成人av电影| 香蕉久久夜色精品| 99久久人妻无码中文字幕系列| 亚洲一区二区欧美日韩| 精品久久久免费视频| 久久精品久久精品亚洲人| 亚洲国产91视频| 这里只有精品66| 久草中文综合在线| 极品色av影院| 91精品国产综合久久婷婷香蕉| 黄色片网站在线观看| 亚洲在线视频观看| 牛牛国产精品| 亚洲一区和二区| 精品日韩美女的视频高清| 四虎影视在线播放| 国产精品美女呻吟| 国产韩日影视精品| 一区二区三区国产好的精华液| 综合激情成人伊人| 亚洲av永久纯肉无码精品动漫| 久久久久久久一区二区| 久久资源综合| 男人搞女人网站| 国产精品高潮久久久久无| 99久久亚洲精品日本无码| 久久久久久久久国产精品| 欧美电影完整版在线观看| 日韩精品一区二区三区久久| 亚洲国产成人在线| 国产三级第一页| 国模吧一区二区三区| 香蕉一区二区| av污在线观看| 亚洲一区二区欧美| 可以在线观看的av网站| 成人激情视频在线观看| 一区二区亚洲| 超薄肉色丝袜一二三| 欧美一区中文字幕| 手机av在线| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 国产一区二区精品久久91| 久久久精品视频免费| 亚洲系列中文字幕| 国产午夜久久av| 日韩在线视频在线观看| 国产精品免费视频观看| 黄色美女一级片| 国产精品激情av电影在线观看| 亚洲欧美网站在线观看| 少妇户外露出[11p]| 欧美久久一二区| 日本不卡1234视频| 在线码字幕一区| 99国产精品久| 99精品免费观看| 国产精品人人做人人爽| 亚洲免费精品| 五月天丁香激情| 中文亚洲视频在线|