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

開發者必備:Log4j系列與Logback日志框架詳解

開發 架構
建議始終使用SLF4J作為日志接口,以便在未來需要更換日志實現時更加方便。希望本文能夠幫助讀者更好地理解Java日志框架的選擇以及在Spring Boot中的應用。

在現代Java開發中,日志框架是不可或缺的一部分。它們不僅幫助開發者記錄應用程序的運行情況,還能夠在問題出現時提供關鍵的調試信息。本文將深入探討Log4j、Log4j2和Logback這三個常用的日志框架。

1.Log4j:經典之選,但已逐漸老去

Log4j是Apache的一個開源項目,廣泛用于Java及其他語言的日志記錄。它提供了靈活的配置方式,允許開發者通過配置文件來控制日志信息的輸出目的地、格式和級別,而無需修改應用程序的代碼。

優點

  • 高度靈活性:通過簡單的配置文件,開發者可以精確控制日志信息的輸出行為。
  • 高性能:支持異步日志記錄,減少日志記錄對主程序性能的影響。
  • 豐富的社區支持:作為Apache的成熟項目,Log4j擁有龐大的用戶社區和豐富的文檔資源。

缺點

  • 安全性問題:歷史上,Log4j的一些版本存在嚴重的安全漏洞,如Log4Shell(CVE-2021-44228),可能導致遠程代碼執行等嚴重后果。
  • 配置復雜性:對于初學者來說,配置文件的編寫可能較為復雜。

示例

依賴

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.17.1</version>
</dependency>

配置 log4j.properties

# 設置根日志級別為INFO,并指定使用的Appender為console和file
log4j.rootLogger=INFO, console, file
# ConsoleAppender配置,用于控制臺輸出
log4j.appender.cnotallow=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.Cnotallow=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# FileAppender配置,用于文件輸出
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logs/app.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.Cnotallow=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

2. Log4j2:性能與功能的雙重提升

Log4j2在Log4j的基礎上進行了多項改進,使其在性能和功能上更加出色。

優點

  • 卓越的性能:采用了插件式架構和基于LMAX Disruptor庫的異步記錄器,使得日志記錄過程更加高效。在多線程場景中,異步記錄器的吞吐量比Log4j 1.x和Logback高18倍,延遲更低。
  • 動態配置更新:無需重啟應用程序即可修改日志配置,減少因日志配置變更導致的服務中斷。
  • 豐富的功能:支持日志事件的過濾和路由,使得開發者可以根據不同的條件對日志進行精細化管理。

缺點

  • 配置復雜性:盡管比Log4j 1.x有所簡化,但相對于一些其他日志框架,Log4j2的配置仍然需要一定的學習和實踐。

示例

依賴

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>

配置 log4j2.xml

<?xml versinotallow="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <!-- 定義全局屬性 -->
    <Properties>
        <Property name="LOG_PATTERN">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n</Property>
    </Properties>
    <!-- Appenders定義 -->
    <Appenders>
        <!-- 控制臺輸出 -->
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="${LOG_PATTERN}"/>
        </Console>
        <!-- 文件滾動輸出 -->
        <RollingFile name="RollingFile" fileName="logs/app.log"
                     filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
            <PatternLayout pattern="${LOG_PATTERN}"/>
            <Policies>
                <TimeBasedTriggeringPolicy />
                <SizeBasedTriggeringPolicy size="250MB"/>
            </Policies>
        </RollingFile>
    </Appenders>
    <!-- Loggers定義 -->
    <Loggers>
        <!-- 根日志記錄器 -->
        <Root level="info">
            <AppenderRef ref="Console"/>
            <AppenderRef ref="RollingFile"/>
        </Root>
    </Loggers>
</Configuration>

3. Logback:Spring Boot的默認選擇

Logback是一個開源的日志框架,由Log4j的創始人Ceki Gülcü開發,旨在提供更高效和靈活的日志記錄功能。Spring Boot默認使用Logback作為日志框架。

優點

  • 出色的性能:采用了異步日志記錄機制,可以在不影響應用程序性能的情況下高效地記錄日志。對于高并發的應用場景尤為重要。
  • 靈活的配置:SpringBoot提供了豐富的配置選項,使得開發者可以根據實際需求定制日志記錄的行為。例如,可以通過配置文件(如logback-spring.xml)來設置日志級別、日志文件的滾動策略、日志格式等。
  • 多種日志輸出方式:支持控制臺、文件、網絡等多種日志輸出方式,開發者可以根據不同的應用場景選擇最合適的日志輸出方式。

缺點

  • 社區支持相對較弱:盡管Logback本身是一個優秀的日志框架,但相對于Log4j和Log4j2,其社區支持和文檔資源可能略顯不足。

示例

依賴

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
</dependency>

配置 logback-spring.xml

<?xml versinotallow="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 定義全局屬性 -->
    <property name="LOG_PATH" value="logs"/>
    <!-- 控制臺輸出配置 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 文件輸出配置 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_PATH}/app.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 每天生成一個新的日志文件 -->
            <fileNamePattern>${LOG_PATH}/archived/app.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- 保留30天的日志文件 -->
            <maxHistory>30</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 根日志記錄器 -->
    <root level="info">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </root>
</configuration>

4.SLF4J:日志門面,簡化日志管理

SLF4J是一個簡單的Java日志門面,它為各種日志框架提供了一個統一的接口。通過使用SLF4J,開發者可以編寫與具體日志實現無關的日志記錄代碼,從而在未來能夠輕松切換到其他日志框架,而無需修改應用程序中的日志記錄代碼。

優點

  • 解耦日志記錄與實現:SLF4J僅提供日志記錄接口,具體的日志實現由底層框架完成。這種解耦使得日志記錄代碼更加靈活和可維護。
  • 豐富的日志實現支持:SLF4J支持多種日志框架,如Log4j、Log4j2、Logback等。開發者可以根據自己的需求選擇合適的日志實現。
  • 簡化配置:通過SLF4J,開發者可以使用統一的配置方式來管理不同日志框架的日志記錄行為。

5.底層原理詳解

日志事件處理流程

無論是哪個日志框架,其基本工作流程都是相似的:接收日志請求 -> 過濾 -> 格式化 -> 輸出。但具體實現細節各有差異

  • 接收日志請求:當調用如logger.info("message")這樣的方法時,就產生了一個日志請求。這個請求包含了日志級別、消息文本、異常信息等內容。
  • 過濾:每個日志框架都有自己的過濾機制,用來決定是否應該處理當前的日志請求。這通常基于配置中的日志級別設置,如果請求的日志級別低于配置的日志級別,則該請求會被忽略。
  • 格式化:一旦日志請求通過了過濾階段,接下來就是對消息進行格式化。格式化器會根據預定義的模式(PatternLayout)將原始消息轉換為適合輸出的形式。例如,添加時間戳、線程名稱等元數據。
  • 輸出:最后一步是將格式化后的日志信息發送到指定的目標位置,如控制臺、文件系統或者遠程服務器。不同的Appender負責不同的輸出方式,比如ConsoleAppender用于控制臺輸出,RollingFileAppender用于文件輸出并支持日志滾動。

異步日志記錄

在高并發環境下,同步的日志記錄可能會成為性能瓶頸。為此,某些日志框架引入了異步日志記錄的概念。以Log4j2為例,它利用了LMAX Disruptor庫實現了高性能的異步日志記錄機制。在這種模式下,日志請求首先被放入一個環形緩沖區(Ring Buffer),然后由專門的消費者線程從緩沖區讀取并處理這些請求。這樣做的好處是減少了主業務線程的日志記錄操作所帶來的延遲,從而提升了整體性能。

性能與可靠性

現代日志框架不僅關注性能,同時也重視可靠性。例如,Logback和Log4j2都支持自動重新加載配置文件的功能,這允許我們在不停止服務的情況下更新日志配置。此外,對于可能發生的錯誤情況,如磁盤空間不足或網絡連接失敗,優秀的日志框架應當具備良好的錯誤恢復能力,保證日志記錄不會因為一時的問題而完全失效。

綜上所述,選擇合適的日志框架和配置策略對于構建高效穩定的應用至關重要。通過理解SLF4J的作用以及掌握日志框架的工作原理,我們可以更好地設計和優化日志系統,以滿足項目需求。

6.小結

選擇合適的日志框架取決于具體的需求和技術棧。對于追求極致性能的應用,Log4j2可能是最佳選擇;而對于那些已經基于Logback構建的應用,繼續使用Logback可能更為合適。無論如何,在Spring Boot環境中整合這些日志框架都是非常直接的過程,只需按照上述步驟操作即可。

最后,建議始終使用SLF4J作為日志接口,以便在未來需要更換日志實現時更加方便。希望本文能夠幫助讀者更好地理解Java日志框架的選擇以及在Spring Boot中的應用。

責任編輯:武曉燕 來源: JAVA充電
相關推薦

2020-01-07 10:06:26

Slf4jLog4JLogback

2021-12-22 16:53:31

Log4jLog4j庫零日漏洞

2009-07-08 14:33:46

Java日志框架Log4J

2021-06-03 10:58:16

logbacklog4jJava

2021-04-02 07:58:36

LogbackLog4j2日志

2013-05-21 10:58:43

Log4jActiveMQSpring

2023-10-28 16:19:18

Android日志

2020-11-04 12:33:08

Log4j 2日志Logback

2021-03-15 18:47:25

日志開發源碼

2023-11-10 10:08:23

2022-02-15 17:51:38

Log4j漏洞網絡安全

2022-03-25 13:42:15

Log4j漏洞網絡安全

2022-02-13 16:18:57

JetBrainsIntelliJLog4j

2022-12-30 08:31:27

MDC查詢日志

2022-01-24 10:02:53

漏洞微軟網絡攻擊

2024-01-03 07:19:19

LogbackLog4j2Java

2021-12-10 15:08:09

Log4j2漏洞日志

2022-01-02 09:28:38

漏洞Log4j大數據

2021-12-14 23:44:26

漏洞Log4j項目

2022-05-12 11:38:26

Java日志Slf4j
點贊
收藏

51CTO技術棧公眾號

中文字幕日本视频| 日韩福利在线视频| 亚洲性色av| 国产日韩av一区二区| 亚洲iv一区二区三区| 欧美极品视频在线观看| 国产精品嫩草影院在线看| 91精品国产福利| 国产日产欧美视频| 日本三级在线播放完整版| aaa欧美日韩| 国产欧美一区二区三区久久人妖| 久久久99精品| 久久一区二区三区喷水| 日韩成人中文字幕| 污免费在线观看| 韩国三级一区| 亚洲一区二区欧美日韩 | 精品不卡一区| 亚洲成人免费网站| 手机在线观看日韩av| 日产精品一区| 精品日韩中文字幕| 日韩在线视频在线| 欧美私人网站| 91色.com| 激情视频一区二区| 国产精品乱码一区二区| 日韩精品一卡二卡三卡四卡无卡| 久久综合网hezyo| 成人黄色免费网址| 亚洲欧洲av| 日韩成人网免费视频| www.四虎在线| 超碰97久久国产精品牛牛| 欧美日韩高清一区二区不卡| 国产xxxxx视频| 小视频免费在线观看| 亚洲第一福利一区| 日韩一级片一区二区| 黄色在线论坛| 亚洲欧洲在线观看av| 日韩欧美一区二区在线观看| 九色网友自拍视频手机在线| 99久久99精品久久久久久| 国产精品免费在线播放| 肥臀熟女一区二区三区| 国产福利一区二区三区在线视频| 91探花福利精品国产自产在线 | 美腿丝袜亚洲一区| 国产精品久久久久久久7电影| 国产www在线| 香蕉久久夜色精品| 国产成人拍精品视频午夜网站| 国产视频91在线| 亚洲一区二区三区高清不卡| 欧美一区二区.| 欧美一级片免费在线观看| 一区二区三区国产在线| 日本韩国在线不卡| 在线免费观看国产精品| 美女视频第一区二区三区免费观看网站| 国产精品露脸av在线| 中文字幕乱码人妻二区三区| 久久99国产精品免费| 91在线高清免费观看| www国产一区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 四虎精品欧美一区二区免费| 日韩精品卡一| 欧美日韩国产页| 女人另类性混交zo| 欧美v亚洲v综合v国产v仙踪林| 91精品国产91热久久久做人人 | 久久亚洲私人国产精品va| 91aaa在线观看| 国产日韩综合| 国产欧美日韩中文| 韩国av免费在线观看| 91麻豆文化传媒在线观看| 天堂一区二区三区| 午夜影院免费在线| 欧美色视频日本版| 福利片一区二区三区| caoporn成人免费视频在线| 亚洲国内精品视频| 中文字幕精品亚洲| 亚洲狼人精品一区二区三区| 国产成人一区二| 精品久久久久成人码免费动漫| 99re在线视频这里只有精品| 最新不卡av| 自拍视频在线看| 欧美一区二区三区视频在线观看| 免费黄色三级网站| 欧美hd在线| 91精品国产高清久久久久久91 | 午夜影视一区二区三区| 欧美日韩国产中文| 在线观看日韩精品视频| 国产精品x453.com| 欧美在线免费观看| 国产视频手机在线| 国产日韩精品一区二区三区| 天堂а√在线中文在线| 91av一区| 亚洲风情亚aⅴ在线发布| 美女av免费看| 亚洲欧美日韩精品一区二区| 亚洲一区精品电影| 最新国产在线观看| 欧美性猛xxx| 久久久久亚洲av无码专区首jn| 日本久久综合| 奇门遁甲1982国语版免费观看高清| h狠狠躁死你h高h| 中文字幕欧美国产| 久久久噜噜噜www成人网| 日本免费一区二区视频| 日韩在线免费视频| 99re国产在线| www国产成人| 精品少妇人欧美激情在线观看| 亚洲精品成a人ⅴ香蕉片| 亚洲欧美一区二区三区情侣bbw| 久久亚洲国产成人精品性色| 激情六月婷婷久久| 夜夜爽99久久国产综合精品女不卡 | 熟妇人妻久久中文字幕| 重囗味另类老妇506070| 国产日韩欧美日韩| h视频在线免费| 在线精品视频免费观看| av在线网站观看| 亚洲一区日韩| 久久精品成人一区二区三区蜜臀 | 亚洲主播在线观看| 女王人厕视频2ⅴk| 亚洲中无吗在线| 91精品在线国产| 日本a在线播放| 欧美裸体bbwbbwbbw| 91香蕉视频网| 麻豆国产欧美日韩综合精品二区| 天堂资源在线亚洲资源| 电影一区二区| 中文字幕不卡在线视频极品| 中文字幕男人天堂| 国产精品国产三级国产有无不卡| 污视频网站观看| 欧美疯狂party性派对| 国产一区二区在线免费视频| 日本中文字幕伦在线观看| 欧美日韩一区不卡| 成人高潮免费视频| 国产麻豆精品在线| wwwjizzjizzcom| 国产精品chinese在线观看| 久久久久久久激情视频| 三级视频在线看| 欧美性猛交xxxx免费看| 色婷婷在线影院| 喷白浆一区二区| 亚洲精品一区二区三区樱花| 国产aⅴ精品一区二区四区| 欧美成人第一页| 人人妻人人澡人人爽精品日本| 天天爽夜夜爽夜夜爽精品视频| 女人被狂躁c到高潮| 日韩和欧美一区二区| 亚洲一二区在线| 亚洲开心激情| 国产成人免费av电影| 黄网址在线观看| 精品国产一区二区在线观看| 在线免费黄色av| 国产精品色一区二区三区| 美女被艹视频网站| 制服诱惑一区二区| 成年人免费观看的视频| 国产香蕉精品| 国产精品亚洲综合天堂夜夜| 四季久久免费一区二区三区四区| 国产视频在线观看一区二区| 亚洲在线免费观看视频| 亚洲成在线观看| 亚洲午夜久久久久久久国产| 国产美女视频一区| 东京热加勒比无码少妇| 亚洲香蕉av| 日本精品一区二区三区高清 久久| 台湾天天综合人成在线| 91精品国产成人www| 免费在线看黄| 亚洲乱亚洲乱妇无码| 国产乱淫片视频| 欧美色视频日本高清在线观看| 国产大片免费看| 国产日韩欧美综合一区| 中文字幕一区二区三区人妻在线视频| 石原莉奈在线亚洲三区| 日韩一级免费看| 全球成人免费直播| 久久综合九九| 精品久久ai| 亚洲a中文字幕| 99精品在免费线偷拍| 亚州欧美日韩中文视频| 毛片在线视频| 亚洲午夜未满十八勿入免费观看全集| 精品人妻少妇嫩草av无码专区| 欧洲一区二区三区免费视频| 日韩三级视频在线| 一级做a爱片久久| 91视频最新网址| 亚洲国产精品ⅴa在线观看| xfplay5566色资源网站| 国产黄色精品视频| 亚洲欧美日韩一级| 日本午夜一区二区| 热久久精品国产| 亚洲精品社区| 搞av.com| 亚洲无毛电影| 老司机激情视频| 欧美在线免费一级片| 亚洲一区尤物| 日韩极品一区| 亚洲欧洲日韩综合二区| 国产剧情在线观看一区| 久久精品日产第一区二区三区乱码| 伊色综合久久之综合久久| 91精品久久久久久久久久久| 99久久久国产精品免费调教网站| 青青草国产精品一区二区| 国产中文在线播放| 韩国三级电影久久久久久| 久久青青色综合| 欧美日韩爱爱视频| 国产精品蜜臀| 性欧美xxxx视频在线观看| av影视在线看| 45www国产精品网站| 小早川怜子影音先锋在线观看| 5252色成人免费视频| 毛片在线网站| 日韩免费在线看| 欧美日韩精品免费观看视欧美高清免费大片| 69久久夜色精品国产69| 亚洲天堂av影院| 日韩免费高清在线观看| 亚洲电影有码| 成人黄色在线播放| 538任你躁精品视频网免费| 国产91精品一区二区绿帽| 国内精品免费| 欧美日韩精品久久| 日韩成人三级| 女同性恋一区二区| 在线精品亚洲| 黄色高清无遮挡| 久久电影网电视剧免费观看| 中文字幕亚洲影院| 丁香天五香天堂综合| 三级男人添奶爽爽爽视频| 国产日韩欧美不卡| 男的操女的网站| 亚洲va天堂va国产va久| 免费av网站在线| 欧美美女一区二区在线观看| 亚洲爆乳无码一区二区三区| 日韩精品丝袜在线| 在线视频三区| 欧美精品电影免费在线观看| 中文日产幕无线码一区二区| 国产精品高清网站| 欧美一区在线观看视频| 国产一区二区视频在线免费观看 | 欧美一区二区激情视频| 欧美色区777第一页| www.av黄色| 亚洲欧美国产另类| www红色一片_亚洲成a人片在线观看_| 久久久久久91| 成人亚洲视频| 国产精品日韩一区二区免费视频| 国产精品自拍区| 免费特级黄色片| 免费亚洲电影在线| 成人啪啪18免费游戏链接| 国产午夜精品一区二区三区四区| 中文字幕在线有码| 在线观看视频一区二区欧美日韩| 精品国产亚洲av麻豆| 伊人久久大香线蕉av一区二区| 中文在线字幕免费观看| 日韩美女免费观看| 精品国产一区二区三区不卡蜜臂| 亚洲一区美女| 久久精品欧洲| 四虎永久免费观看| 成人欧美一区二区三区在线播放| 毛片基地在线观看| 亚洲精品在线一区二区| 欧美日本一道| 国产成人精品一区二区在线| 国产精品久久久久av蜜臀| 中文字幕乱码一区二区三区| 老司机午夜精品视频| 中文字幕天堂av| 亚洲色图制服丝袜| 探花国产精品一区二区| 亚洲精品国产精品国自产观看浪潮| 黄色视屏免费在线观看| 国产精品久久久久久中文字| 欧美一区 二区| 搞av.com| 丁香一区二区三区| 印度午夜性春猛xxx交| 欧美日韩国产在线播放网站| 国产主播福利在线| 欧美综合在线观看| 欧美日韩看看2015永久免费| 国产一区二区三区乱码| 国产成人午夜电影网| 久久高清内射无套| 欧美一区二区三区免费大片 | 中文字幕22页| 国产精品情趣视频| 最近中文字幕av| 夜夜嗨av一区二区三区四区| 美女100%一区| 欧美日韩在线观看一区| 国产精品亚洲综合久久| jlzzjizz在线播放观看| 亚洲va韩国va欧美va| 人妻无码中文字幕| 97视频在线观看播放| 欧美顶级毛片在线播放| 免费无码毛片一区二三区| 成人爱爱电影网址| 日本天堂在线视频| 亚洲黄色成人网| 中文字幕在线中文字幕在线中三区| 久久久久久a亚洲欧洲aⅴ| 亚洲一区日韩| 我不卡一区二区| 欧美日韩激情一区二区三区| 91福利在线视频| 91亚洲午夜在线| 国产一区亚洲| 欧美大片免费播放器| 欧美日韩在线视频一区| 国产一二三区在线视频| 国产精品久久久久久久av电影| 日韩欧美电影| 香蕉网在线视频| 亚洲18女电影在线观看| 青青草免费在线视频| 国产精品久久久久久中文字| 一本到12不卡视频在线dvd| 久久无码专区国产精品s| 欧美日韩国内自拍| аⅴ资源新版在线天堂| 成人福利在线观看| 伊人影院久久| 伊人网在线视频观看| 制服.丝袜.亚洲.中文.综合 | 日韩av123| 午夜欧美在线| 中文字幕天堂网| 在线精品视频一区二区三四 | 一区二区三区欧美| 手机看片1024日韩| 国产精品自拍视频| 亚洲无毛电影| av手机在线播放| 日韩视频免费观看高清完整版| 精品捆绑调教一区二区三区| 亚洲精品日韩在线观看| 丁香网亚洲国际| 在线观看亚洲国产| 久久青草精品视频免费观看| 国产精品日韩精品中文字幕| 在线观看视频在线观看| 岛国精品视频在线播放| 麻豆tv免费在线观看| 精品一区日韩成人| 精品一区二区三区免费毛片爱| 日韩黄色三级视频| 俺去亚洲欧洲欧美日韩| 香蕉久久精品| 日韩欧美中文视频| 欧美亚洲国产一区二区三区va| 电影k8一区二区三区久久| 亚洲精品第一区二区三区| 99久久久免费精品国产一区二区 | 成人开心激情| 日日摸日日碰夜夜爽无码| 中文字幕一区二区三区四区不卡|