3atv精品不卡视频,97人人超碰国产精品最新,中文字幕av一区二区三区人妻少妇,久久久精品波多野结衣,日韩一区二区三区精品

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

那些年关于JavaWeb的点点滴滴,你想看的这里全都有噢~

發布時間:2023/12/14 java 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 那些年关于JavaWeb的点点滴滴,你想看的这里全都有噢~ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JavaWeb知識匯總

  • 一、Servlet
  • 二、HTTP
    • 1. HTTP協議簡介
    • 2.HTTPS
  • 三、Request
  • 四、Response
  • 五、ServletContext
  • 六、ServletConfig(了解)
  • 七、Cookie和Session
    • 1.會話技術
    • 2.Cookie
    • 3.Session
  • 八、JSP
  • 九、 EL &JSTL
    • 1. EL表達式
    • 2. JSTL
  • 十、Filter
  • 十一、Listener
  • 十二、 MVC和三層架構
  • 十三、Ajax
  • 十四、JSON
    • 1.jackson
    • 2.Jsonlib

使用PC瀏覽,體驗更加!!!!

一、Servlet

  • 概念:servlet是一個在Web服務器中運行的小型Java程序。主要功能在于交互
    式地瀏覽和修改數據,?成動態Web內容。

    A servlet is a small Java program that runs within a Web server

    • Servlet就是一個接口,定義了Java類被瀏覽器訪問到(tomcat識別)的規則。
    • 未來我們可以自定義一個類,實現Servlet接口,復寫方法。
  • 快速入門

  • 創建JavaEE項目

  • 定義一個類,實現Servlet接口
    public class ServletDemo1 implements Servlet

  • 實現接口中的抽象方法

  • 配置Servlet
    在web.xml中配置:

    <!--配置Servlet --><servlet><servlet-name>demo1</servlet-name><!--全類名--><servlet-class>cn.itcast.web.servlet.ServletDemo1</servlet-class></servlet><servlet-mapping><servlet-name>demo1</servlet-name><!--資源路徑--><url-pattern>/demo1</url-pattern></servlet-mapping>
  • 執行原理:

    1. 當服務器接受到客戶端瀏覽器的請求后,會解析請求URL路徑,獲取訪問的Servlet的資源路徑。 2. 查找web.xml文件,是否有對應的<url-pattern>標簽體內容。 3. 如果有,則在找到對應的<servlet-class>全類名。 4. tomcat會將對應的Servlet字節碼文件加載進內存,并且創建其對象。 5. 調用其方法。
  • Servlet生命周期

    1. 當客戶端?次發送第?次請求后,由容器(web服務器(tomcat))去解析請求。 2. 根據請求找到對應的servlet,判斷該類的對象是否存在。 3. 不存在則創建servlet實例,調取init()?法 進?初始化操作。 4. 初始化完成后調取service()?法,由service()判斷客戶端的請求?式。 5. 如果是get,則執?doGet()。 6. 如果是post則執?doPost()。 7. 處理?法完成后,作出相應結果給客戶端.單次請求處理完畢。 8. 當服務器關閉時調取destroy()?法進?銷毀

    對于同一個Servlet,當?戶發送第2~n次請求時,不再執?init(),?直接執?service()?法,調取doGet()/doPost()?法。

  • Servlet中的生命周期方法1. 被創建:執行init()方法,只執行一次Servlet什么時候被創建?默認情況下,第一次被訪問時,Servlet被創建。通過web.xml文件,可以配置Servlet的創建時機。在<servlet>標簽下配置1. 第一次被訪問時,創建<load-on-startup>的值為負數。2. 在服務器啟動時,創建<load-on-startup>的值為0或正整數,正數情況下,數值越?,加載該Servlet的優先級越?。Servlet的init()方法,只執行一次,說明一個Servlet在內存中只存在一個對象,Servlet是單例的多個用戶同時訪問時,可能存在線程安全問題。解決:盡量不要在Servlet中定義成員變量。即使定義了成員變量,也不要對修改值2. 提供服務:執行service()方法,執行多次每次訪問Servlet時,service()方法都會被調用一次。3. 被銷毀:執行destroy()方法,只執行一次Servlet被銷毀時執行。服務器關閉時,Servlet被銷毀只有服務器正常關閉時,才會執行destroy()方法。destroy()方法在Servlet被銷毀之前執行,一般用于釋放資源* Servlet3.0:好處:支持注解配置。可以不需要web.xml了。步驟:1. 創建JavaEE項目,選擇Servlet的版本3.0以上,可以不創建web.xml2. 定義一個類,實現Servlet接口3. 復寫方法4. 在類上使用@WebServlet注解,進行配置* @WebServlet("資源路徑")示例:@WebServlet(urlPatterns = {"/test"},initParams ={@WebInitParam(name = "code",value = "utf-8") },loadOnStartup = 1)public class TestServlet extends HttpServlet {}

關于@WebServlet的注解類如下:

@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface WebServlet {String name() default "";//相當于<Servlet-name>String[] value() default {};//代表urlPatterns()屬性配置String[] urlPatterns() default {};//相當于<url-pattern>int loadOnStartup() default -1;//相當于<load-on-startup>WebInitParam[] initParams() default {};boolean asyncSupported() default false;String smallIcon() default "";String largeIcon() default "";String description() default "";String displayName() default "";}
  • Servlet體系結構 Servlet -- 接口|GenericServlet -- 抽象類|HttpServlet -- 抽象類* GenericServlet:將Servlet接口中其他的方法做了默認空實現,只將service()方法作為抽象* 將來定義Servlet類時,可以繼承GenericServlet,實現service()方法即可* HttpServlet:對service()方法做了詳細的實現,不再需要我們寫代碼判斷用戶的請求方式,對http協議的一種封裝,簡化操作1. 定義類繼承HttpServlet2. 復寫doGet/doPost方法
  • Servlet相關配置1. urlpartten:Servlet訪問路徑(資源路徑)1. 一個Servlet可以定義多個訪問路徑 : @WebServlet({"/d4","/dd4","/ddd4"})2. 路徑定義規則:1. /xxx:路徑匹配2. /xxx/xxx:多層路徑,目錄結構3. *.do:擴展名匹配ps: /user/.do、/.do、test*.do都是非法的,啟動時候會報錯

二、HTTP

1. HTTP協議簡介

  • 概念:超?本傳輸協議(英?:HyperText Transfer Protocol,縮寫:HTTP)是?種?于分布式、協作式和超媒體信息系統的應?層協議。HTTP是萬維?的數據通信的基礎。定義了客戶端和服務器端通信時,交互報文的格式

  • 特點:
    1. 基于TCP/IP的高級協議
    2. 默認端口號:80
    3. 基于請求/響應模型的:一次請求對應一次響應
    4. 在HTTP/1.0中默認使?短連接。也就是說,客戶端和服務器每進??次HTTP操作,就建??次連接,任務結束就中斷連接。
    5. 無狀態協議:HTTP協議自身不對請求和響應之間的通信狀態進行保存。每次請求之間相互獨立,不能交互數據。
    6. HTTP/1.1起,默認使??連接,?以保持連接特性。使??連接的HTTP協議,會在響應頭加?這?
    代碼:

    Connection:keep-alive

    在使??連接的情況下,當?個??打開完成后,客戶端和服務器之間?于傳輸HTTP數據的TCP連接不會關閉,客戶端再次訪問這個服務器時,會繼續使?這?條已經建?的連接。Keep-Alive不會永久保持連接,它有?個保持時間,可以在不同的服務器軟件(如Apache)中設定這個時間。實現?連接需要客戶端和服務端都?持?連接。

  • 請求消息(報文)格式: 客戶端發送給服務器端的數據

    1. 請求行請求方式 請求url 請求協議/版本GET http://localhost:8080/thumbupTest/index.jsp HTTP/1.1請求方式:HTTP協議有7中請求方式,常用的有2種GET:1. 請求參數在請求行中,在url后。2. 請求的url長度有限制的3. 不太安全POST:1. 請求參數在請求體中2. 請求的url長度沒有限制的3. 相對安全 2. 請求頭:客戶端瀏覽器告訴服務器一些信息請求頭名稱: 請求頭值常見的請求頭:1. User-Agent:瀏覽器告訴服務器,我訪問你使用的瀏覽器版本信息* 可以在服務器端獲取該頭的信息,解決瀏覽器的兼容性問題2. Referer:http://localhost/login.html告訴服務器,我(當前請求)從哪里來?作用:1. 防盜鏈:通過條件判斷指定從某條URL跳轉過來到當前頁面才正常顯示2. 統計工作:可以統計從某個URL跳轉到當前頁面的用戶數 3. 請求空行空行,就是用于分割POST請求的請求頭,和請求體的。 4. 請求體(正文):封裝POST請求消息的請求參數的格式: username=zhangsan * 字符串格式(請求頭):POST /login.html HTTP/1.1Host: localhostUser-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2Accept-Encoding: gzip, deflateReferer: http://localhost/login.htmlConnection: keep-aliveUpgrade-Insecure-Requests: 1
  • 響應消息(報文)格式: 服務器端發送給客戶端的數據

    數據格式: 1. 響應行1. 組成:協議/版本 響應狀態碼 狀態碼描述示例: HTTP/1.1 200 OK2. 響應狀態碼:服務器告訴客戶端瀏覽器本次請求和響應的一個狀態。1. 狀態碼都是3位數字 2. 分類:1. 1xx:服務器接收客戶端消息,但沒有接受完成,等待一段時間后,發送1xx多狀態碼2. 2xx:成功。代表:2003. 3xx:重定向。代表:302(重定向),304(訪問緩存)4. 4xx:客戶端錯誤。* 代表:* 404(請求路徑沒有對應的資源) * 405:請求方式沒有對應的doXxx方法5. 5xx:服務器端錯誤。代表:500(服務器內部出現異常) 2. 響應頭:1. 格式:頭名稱: 值2. 常見的響應頭:1. Content-Type:服務器告訴客戶端本次響應體數據格式以及編碼格式2. Content-disposition:服務器告訴客戶端以什么格式打開響應體數據* 值:* in-line:默認值,在當前頁面內打開* attachment;filename=xxx:以附件形式打開響應體。文件下載需設置此響應頭 3. 響應空行 4. 響應體:傳輸的數據 5. * 響應字符串格式HTTP/1.1 200 OKContent-Type: text/html;charset=UTF-8Content-Length: 101Date: Wed, 06 Jun 2018 07:08:42 GMT<html><head><title>$Title$</title></head><body>hello , response</body></html>
  • 常見狀態碼

    狀態碼狀態碼描述含義
    100Continue只有?部分請求被服務器接收,但只要沒被服務器拒絕,客戶端就會延續這個請求
    101Switching Protocols服務器交換機協議
    200OK請求被確認
    201Created請求時完整的,新的資源被創建
    202Accepted請求被接受,但未處理完
    300Multiple Choices?個超鏈接表,?戶可以選擇?個超鏈接并訪問,最??持5個超鏈接
    301Moved Permanently被請求的??已經移動到了新的URL下
    302Found被請求的??暫時性地移動到了新的URL下
    303See Other被請求的??可以在?個不同的URL下找到
    400Bad Request服務器?法識別請求
    403Forbidden禁?訪問所請求的??
    404Not Found服務器?法找到所請求的??
    405Method Not Allowed請求中所指定的?法不被允許
    500Internal Server Error請求不完整,服務器遇?了出乎意料的狀況
    501Not Implemented請求不完整,服務器不提供所需要的功能
    502Bad Gateway請求不完整,服務器從上游服務器接受了?個?效的響應
    503Service Unavailable請求不完整,服務器暫時重啟或關閉
    504Gateway Timeout?關超時
    505HTTP Version Not Supported服務器不?持所指定的HTTP版本

2.HTTPS

HTTPS (全稱:Hyper Text Transfer Protocol over SecureSocket Layer), 是以安全為目標的 HTTP 通道,在HTTP的基礎上通過傳輸加密和身份認證保證了傳輸過程的安全性 。 HTTPS 在HTTP 的基礎下加入SSL,HTTPS 的安全基礎是SSL,因此加密的詳細內容就需要SSL。 HTTPS 存在不同于 HTTP 的默認端口及一個加密/身份驗證層(在 HTTP與 TCP 之間)。 這個系統提供了身份驗證與加密通訊方法。 它被廣泛用于萬維網上安全敏感的通訊,例如交易支付等方面。
  • 詳情請看 HTTPS

三、Request

  • Request對象和Response對象的原理

    1.客戶端發送請求后,Tomcat服務器會根據請求URL中的資源路徑(Servlet訪問路徑),創建對應的Servlet對象。
    2. Tomcat服務器,會創建request和response對象,并將請求消息(請求報文)數據封裝到request對象中。
    3. Tomcat將request和response兩個對象傳遞給service()方法,并且調用service()方法。
    4. 后續,程序員可以通過request對象獲取請求消息數據,通過response對象設置響應消息(響應報文)數據。
    5. 服務器給瀏覽器作出響應之前會從response對象中獲取程序員設置的響應消息數據。

  • Request對象繼承體系結構

    ServletRequest -- 接口| 繼承 HttpServletRequest -- 接口| 實現 org.apache.catalina.connector.RequestFacade 類(tomcat)public class RequestFacade implements HttpServletRequest
  • Request功能

    1. 獲取請求消息(報文)數據1. 獲取請求行數據* GET http://localhost:8080/day14/demo1?name=zhangsan HTTP/1.1* 方法:1. 獲取請求方式 :GET* String getMethod() 2. (*)獲取虛擬目錄:/day14* String getContextPath()3. 獲取Servlet路徑: /demo1* String getServletPath()4. 獲取get方式請求參數:name=zhangsan* String getQueryString()5. (*)獲取請求URI:/day14/demo1* String getRequestURI(): /day14/demo1* StringBuffer getRequestURL() :http://localhost/day14/demo1* URL:統一資源定位符 : http://localhost/day14/demo1 例如:中華人民共和國* URI:統一資源標識符 : /day14/demo1 例如:共和國6. 獲取協議及版本:HTTP/1.1* String getProtocol()7. 獲取客戶機的IP地址:* String getRemoteAddr() // 0:0:0:0:0:0:0:12. 獲取請求頭數據* 方法:* (*)String getHeader(String name):通過請求頭的名稱獲取請求頭的值* Enumeration<String> getHeaderNames():獲取所有的請求頭名稱3. 獲取請求體(正文)數據:* 請求體:只有POST請求方式,才有請求體,在請求體(正文)中封裝了POST請求的請求參數* 步驟:1. 獲取流對象* BufferedReader getReader():獲取字符輸入流,只能操作字符數據* ServletInputStream getInputStream():獲取字節輸入流,可以操作所有類型數據2. 再從流對象中拿數據 2. 其他功能:1. 獲取請求參數通用方式:不論get還是post請求方式都可以使用下列方法來獲取請求參數1. String getParameter(String name):根據參數名稱獲取參數值 username=zs&password=1232. String[] getParameterValues(String name):根據參數名稱獲取參數值的數組 hobby=xx&hobby=game3. Enumeration<String> getParameterNames():獲取所有請求的參數名稱4. Map<String,String[]> getParameterMap():獲取所有參數的map集合* 中文亂碼問題:* get方式:tomcat 8 已經將get方式亂碼問題解決了* Tomcat 8以前:?式1: //針對于get提交時中?亂碼String s=new String(請求參數.getBytes("ISO-8859-1"),"UTF-8");示例: String s=new String(request.getParameter("key").getBytes("ISO-8859-1"),"GBK");?式2:修改tomcat中配置?件://使?于get提交在Tomcat?錄結構\conf\server.xml中設置字符集 URLEncoding<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />* post方式:會亂碼* 解決:在獲取參數前,設置request的編碼request.setCharacterEncoding("utf-8");2. 請求轉發:一種在服務器內部的資源跳轉方式1. 步驟:1. 通過request對象獲取請求轉發器對象:RequestDispatcher getRequestDispatcher(String path)2. 使用RequestDispatcher對象來進行轉發:forward(ServletRequest request, ServletResponse response) 2. 特點:1. 瀏覽器地址欄路徑不發生變化2. 只能轉發到當前服務器內部資源中。3. 轉發是一次請求,可以使用request對象來共享數據3. 共享數據:* 域對象:一個有作用范圍的對象,可以在范圍內共享數據* request域:代表一次請求的范圍,一般用于請求轉發的多個資源中共享數據* 方法:1. void setAttribute(String name,Object obj):存儲數據2. Object getAttitude(String name):通過鍵獲取值3. void removeAttribute(String name):通過鍵移除鍵值對4. 獲取ServletContext:* ServletContext getServletContext()
  • GET和POST的區別

    1、GET請求:請求的數據會附加在URL之后,以?分割URL和傳輸數據,多個參數?&連接。URL的編碼格式采?的是ASCII編碼,而不是uniclde,即是說所有的非ASCII字符都要編碼之后再傳輸。POST請求:請求的數據放在請求消息(報文)的請求體(正文)中。因此,GET請求的數據會暴露在地址欄中,?POST請求則不會。 2、傳輸數據的大小在HTTP規范中,沒有對URL的?度和傳輸的數據??進?限制。但是在實際開發過程中,對于GET,特定的瀏覽器和服務器對URL的?度有限制。因此,在使?GET請求時,傳輸數據會受到URL?度的限制。對于POST,由于不是URL傳值,理論上是不會受限制的,但是實際上各個服務器會規定對POST提交數據??進?限制,Apache、IIS都有各?的配置。 3、安全性POST的安全性比GET的相對較?。

四、Response

  • 功能: 設置響應消息

    1. 設置響應行1. 格式:HTTP/1.1 200 ok2. 設置狀態碼:setStatus(int sc) 2. 設置響應頭:setHeader(String name, String value) 添加響應頭:void addHeader(String name, String value) //兩者作用一致 3. 設置響應體:* 使用步驟:1. 獲取輸出流* 字符輸出流:PrintWriter getWriter()* 字節輸出流:ServletOutputStream getOutputStream()2. 使用輸出流,將數據輸出到客戶端瀏覽器
  • 案例

    1. 完成重定向* 重定向:資源跳轉的方式* 代碼實現://1. 設置狀態碼為302response.setStatus(302);//2.設置響應頭locationresponse.setHeader("location","/day15/responseDemo2");//簡單的重定向方法response.sendRedirect("/day15/responseDemo2");* forward 和 redirect 區別* 重定向的特點:redirect1. 地址欄發生變化2. 重定向可以訪問其他站點(服務器)的資源3. 重定向是兩次請求。不能使用request對象來共享數據* 轉發的特點:forward1. 轉發地址欄路徑不變2. 轉發只能訪問當前服務器下的資源3. 轉發是一次請求,可以使用request對象來共享數據2. 服務器輸出字符數據到瀏覽器* 步驟:1. 獲取字符輸出流2. 輸出數據* 注意:* 亂碼問題:1. PrintWriter pw = response.getWriter();獲取的流的默認編碼是ISO-8859-12. 設置該流的默認編碼 response.setHeader("content-type","text/htm;charset=utf-8")告訴瀏覽器響應體所使用的編碼//簡單的形式,設置編碼,是在獲取流之前設置response.setContentType("text/html;charset=utf-8");3. 服務器輸出字節數據到瀏覽器* 步驟:1. 獲取字節輸出流 ServletOutputStream getOutputStream()2. 輸出數據
  • 路徑寫法

    1. 路徑分類1. 相對路徑:通過相對路徑不可以確定唯一資源* 如:./index.html 或者 servletDemo1* 不以/開頭、以.開頭路徑* 規則:找到當前資源和目標資源之間的相對位置關系* ./:當前目錄* ../:后退一級目錄2. 絕對路徑:通過絕對路徑可以確定唯一資源* 如:http://localhost/day15/responseDemo2 /day15/responseDemo2* 以/開頭的路徑* 規則:判斷定義的路徑是給誰用的?判斷請求將來從哪兒發出* 給客戶端瀏覽器使用:需要加虛擬目錄(項目的訪問路徑)* 建議虛擬目錄動態獲取:request.getContextPath()*如 <a> , <form> 標簽重定向到某個頁面* 給服務器使用:不需要加虛擬目錄,使用相對路徑即可* 轉發路徑

五、ServletContext

  • 概念:ServletContext是javax.servlet包內定義的接口,Web容器會為每個Web程序構造一個實現該接口的對象實例,代表整個web應用,Servlet可以和web容器(服務器)進行交互
  • 獲取:
  • 通過request對象獲取
    request.getServletContext();
  • 通過HttpServlet獲取
    this.getServletContext();
  • 功能:
  • 獲取MIME類型:
    • MIME類型:在互聯網通信過程中定義的一種文件數據類型

      • 格式: 大類型/小類型 text/html image/jpeg
    • 獲取:String getMimeType(String file)

  • 域對象:共享數據
  • void setAttribute(String name,Object value)

  • Object getAttribute(String name)

  • void removeAttribute(String name)

    // ServletContext對象范圍:所有用戶所有請求的數據

  • 獲取文件的真實(服務器)路徑
  • 方法:String getRealPath(String path)
    String b = context.getRealPath("/b.txt");//web目錄下資源訪問
    System.out.println(b);

    String c = context.getRealPath("/WEB-INF/c.txt");//WEB-INF目錄下的資源訪問
    System.out.println(c );

    String a = context.getRealPath("/WEB-INF/classes/a.txt");//src目錄下的資源訪問
    System.out.println(a);

  • 六、ServletConfig(了解)

    • 概述

      ServletConfig是用來獲得Servlet相關的配置的對象

    • 獲取

      通過當前Servlet實例來獲取
      ServletConfig config = this.getServletConfig();

    • 功能
    • 獲取ServletContext對象
      * ServletContext getServletContext();
    • 獲取當前Servlet的初始化參數
      * String getInitParameter(String name)
    • 獲取當前Servlet的所有初始化參數的名稱
      * Enumeration getInitParameterNames()
    • 獲取當前Servlet實例的名稱
      * String getServletName()
    • Servlet初始化參數
  • 針對某個Servlet的初始化參數

    實現?式: (1) web.xml中先定義初始化參數<servlet><servlet-name></servlet-name><servlet-class></servlet-class><init-param><param-name>encoding</param-name><param-value>utf-8</param-value></init-param></servlet> (2) 注解方式實現 initParams@WebServlet(urlPatterns = {"/test"},initParams ={@WebInitParam(name = "code",value = "utf-8") })public class TestServlet extends HttpServlet {}*獲取: String encode = this.getServletConfig().getInitParameter("encoding");

    2.對于當前web程序中所有的Servlet都有效的初始化參數

    (1)定義<context-param><param-name>forAll</param-name><param-value>utf-8</param-value></context-param> (2)獲取 this.getServletConfig().getServletContext().getInitParameter("forAll");
  • 七、Cookie和Session

    1.會話技術

  • 會話:會話跟蹤是Web程序中常?的技術,?來跟蹤?戶的整個會話。保持對?戶會話期間的數據管理。常?的會話跟蹤技術是Cookie與Session。一次會話中包含多次請求和響應。

    一次會話:瀏覽器第一次給服務器資源發送請求,會話建立,直到有一方斷開為止

  • 功能:在一次會話的范圍內的多次請求間,共享數據
  • 方式:
  • 客戶端會話技術:Cookie
  • 服務器端會話技術:Session
  • 2.Cookie

    • 概念
      Cookie是客戶端(?般指瀏覽器)請求服務器后,服務器發給客戶端的?個辨認標識,保存在客戶端,當客戶端再次向服務器發送請求時,會攜帶著這個辨認標識,服務器就可以通過這個標識來識別客戶端的身份或狀態等。

    • Cookie的設置和獲取

      • 使用步驟:
        1. 創建Cookie對象,綁定數據
        * new Cookie(String name, String value)
        2. 發送Cookie對象
        * response.addCookie(Cookie cookie)
        3. 獲取Cookie,拿到數據
        * Cookie[] request.getCookies()
        *
        * 示例:
        * Cookie[] cs = request.getCookies();
        * // 通過遍歷獲取各個cookie的值
        for (Cookie c : cs) {
        String name = c.getName(); //獲取cookie的名稱
        String value = c.getValue();//獲取cookie的值
        }
    • 實現原理

    • 基于響應頭set-cookie和請求頭cookie實現。
  • 客戶端請求服務器中發送cookie的Servlet,服務器設置set-cookie: msg = hello頭發送到客戶端瀏覽器。
  • 瀏覽器將msg = hello保存到本地cookie中,后續的請求都會通過請求頭Cookie攜帶此客戶端的cookie數據,服務器可以獲取cookie進行相應的操作
    • 細節
  • 一次可不可以發送多個cookie?
    * 可以
    * 可以創建多個Cookie對象,使用response調用多次addCookie方法發送cookie即可。
  • cookie在瀏覽器中保存多長時間?
    1. 默認情況下,當瀏覽器關閉后,Cookie數據被銷毀
    2. 持久化存儲:
    * setMaxAge(int seconds)
    (1)正數:將Cookie數據寫到硬盤的文件中。持久化存儲。并指定cookie存活時間,時間到后,cookie文件自動失效
    (2)負數:默認值
    (3)零:刪除cookie信息
  • cookie能不能存中文?
    * 在tomcat 8 之前 cookie中不能直接存儲中文數據。
    * 需要將中文數據轉碼—一般采用URL編碼(%E3)
    * 在tomcat 8 之后,cookie支持中文數據。特殊字符還是不支持,建議使用URL編碼存儲,URL解碼解析
  • cookie共享問題?
    1. 假設在一個tomcat服務器中,部署了多個web項目,那么在這些web項目中cookie能不能共享?
    * 默認情況下cookie不能共享。
    * setPath(String path):設置cookie的獲取范圍。默認情況下,被設置為當前的虛擬目錄
    * 如果要共享,則可以將path設置為"/"
    ~
    2. 不同的tomcat服務器間cookie共享問題?
    ? * setDomain(String path):如果設置一級域名相同,那么多個服務器之間cookie可以共享
    ? * setDomain(".baidu.com"),那么tieba.baidu.com和news.baidu.com中cookie可以共享。
  • Cookie的特點和作用
    * 特點
    1. cookie存儲數據在客戶端瀏覽器
    2. 瀏覽器對于單個cookie 的大小有限制(4kb) 以及 對同一個域名下的總cookie數量也有限制,不同瀏覽器對于cookie的數量限制不同。
    * 作用:
    1. cookie一般用于存出少量的不太敏感的數據
    2. 在不登錄的情況下,完成服務器對客戶端的身份識別
  • 3.Session

  • 概念:服務器端會話技術,在一次會話的多次請求間共享數據,將數據保存在服務器端的對象中。HttpSession

  • 快速入門:

  • 獲取HttpSession對象:
    HttpSession session = request.getSession();
  • 使用HttpSession對象:
    Object getAttribute(String name)
    void setAttribute(String name, Object value)
    void removeAttribute(String name)
  • 原理

    • Session的實現是依賴于Cookie的。
    • 第一次獲取Session,沒有Cookie,服務器會在內存中創建一個新的Session對象,假設其對應的Id屬性值為 ID = 742938a4289。
    • 服務器會自動設置響應頭set-cookie:JSESSIONID= 742938a4289響應消息給瀏覽器。
    • 瀏覽器解析set-cookie響應頭,將JSESSIONID=742938a4289存入Cookie請求頭。
    • 后續服務器再次創建Session對象時會根據請求頭Cookie中的JSESSIONID先在內存中尋找對應的session實例,然后返回其引用。
  • 細節:
    ? 1. 當客戶端關閉后,服務器不關閉,兩次獲取session是否為同一個?
    ? * 默認情況下。不是。
    ? * 如果需要相同,則可以創建Cookie,鍵為JSESSIONID,設置最大存活時間,讓 cookie持久化保存。
    ? Cookie c = new Cookie(“JSESSIONID”,session.getId());
    ? c.setMaxAge(60*60); //單位:秒
    ? response.addCookie(c );
    ?

    2. 客戶端不關閉,服務器關閉后,兩次獲取的session是同一個嗎?* 不是同一個,但是要確保數據不丟失。tomcat自動完成以下工作* session的鈍化:* 在服務器正常關閉之前,將session對象序列化到硬盤上* session的活化:* 在服務器啟動后,將session文件轉化為內存中的session對象即可。
  • session什么時候被銷毀?
    1. 本地服務器正常關閉后不會被銷毀,idea上配置的tomcat服務器關閉后會被銷毀
    2. session對象調用invalidate() 。
    3. session默認失效時間 30分鐘
    * Session的超時時間為maxInactiveInterval屬性,可以通過對應的 getMaxInactiveInterval()獲取,通過 setMaxInactiveInterval(longinterval)修改
    * 還可以在config目錄下的web.xml中選擇性配置修改

    <session-config><session-timeout>30</session-timeout></session-config>

    4.瀏覽器中含有JSESSIONID的cookie被銷毀時,服務器會重新創建一個新的session對象,原有的session對象會在失效時間過后被銷毀。

  • session的特點

  • session用于存儲一次會話的多次請求的數據,存在服務器端。
  • 為了獲得更?的存取速度,服務器?般把Session放在內存?。
  • session可以存儲任意類型,任意大小的數據
  • 什么時候創建Session?
    1.Session在?戶第?次訪問page指令中的session屬性值不為false的JSP頁面時被創建。
    2.若servelt是第瀏覽器客戶端訪問的第一個WEB應用的資源,則只有調用了request.getSession()或request.getSession(true)才會創建session對象。

    其中request.getSession(boolean),
    boolean為false時,若沒有和當前JSP頁面關聯的session對象則返回null,若有,則返回true。
    Boolean為true時,一定返回一個session對象,若沒有和當前JSP頁面關聯的session對象,則服務器創建一個新的session對象,若有,直接返回。
    request.getSession()等同于request.getSession(true)。

    • session與Cookie的區別:
      1. session存儲數據在服務器端,Cookie在客戶端。
      2. session沒有數據大小限制,Cookie有,一般為4KB。
      3. session數據安全,Cookie相對于不安全。
      4. Session是由應?服務器維持的?個服務器端的存儲空間,?戶在連接服務器時,會由服務器?成?個唯?的SessionID,?該SessionID 為標識符來存取服務器端的Session存儲空間。?SessionID這?數據則是保存到客戶端,?Cookie保存的,?戶提交??時,會將這?SessionID提交到服務器端,來存取Session數據。這?過程,是不?開發?員?預的。所以?旦客戶端禁?Cookie,那么Session也會失效。

    八、JSP

    1. 概念:
    * Java Server Pages: java服務器端頁面
    * 可以理解為:一個特殊的頁面,其中既可以指定定義html標簽,又可以定義java代碼
    * 用于簡化書寫!!!

    2. 原理
    * JSP本質上就是一個Servlet,當瀏覽器訪問http://localhost:8080/day9_1/index.jsp。服務器發現后綴為.jsp,它會根據路徑找到index.jsp?件,會將index.jsp翻譯成index_jsp.java?件,對這個java?件進?編譯,產??個index_jsp.class?件,將class?件加載運?。將JSP翻譯成java?件,它是將JSP中的所有的HTML代碼通過流進?輸出,也就是說最終翻譯成class,被虛擬機加載,它本質是servlet,它就會往回響應,響應回去就是把JSP中的HTML代碼以流的?式寫回瀏覽器。所以在JSP中展示出了HTML代碼。

    3. JSP指令

    • 作用:用于配置JSP頁面,導入資源文件

      • 格式:
        <%@ 指令名稱 屬性名1=屬性值1 屬性名2=屬性值2 … %>
    • 分類:
      1. page :

      • contentType: 配置JSP頁面的 contentType屬性:等同于response.setContentType()
    • 設置響應體的mime類型以及字符集
    • 設置當前jsp頁面的編碼(只能是高級的IDE才能生效,如果使用低級工具,則需要設置pageEncoding屬性設置當前頁面的字符集)
      • import:導包
      • errorPage:當前頁面發生異常后,會自動跳轉到指定的錯誤頁面
      • isErrorPage:標識當前也是是否是錯誤頁面。
        • true:是,可以使用內置對象exception <% String message = exception.getMessage(); %>
        • false:否。默認值。不可以使用內置對象exception

    page 指令相關屬性:

  • include : JSP可以通過include指令來包含其他?件。被包含的?件可以是JSP?件、HTML?件或?本?件。包含的?件就好像是該JSP?件的?部分,會被同時編譯執?。
    <%@ include file=“?件相對 url 地址” %>

  • taglib : 導入資源(引入jsp標簽庫)

    • <%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
      • prefix:前綴,自定義的
  • 注釋:

  • 1. html注釋:<!-- -->:只能注釋html代碼片段2. jsp注釋:推薦使用<%-- --%>:可以注釋所有

    4. JSP的腳本: JSP定義Java代碼的方式
    1. <% 代碼 %>:定義的java代碼,在service方法中。service方法中可以定義什么,該腳本中就可以定義什么。
    2. <%! 代碼 %>:定義的java代碼,在jsp轉換后的java類的成員位置。
    3. <%= 代碼 %>:定義的java代碼,會輸出到頁面上。輸出語句中可以定義什么,該腳本中就可以定義什么。

    5. JSP的內置對象:
    * 在jsp頁面中不需要獲取和創建,可以直接使用的對象
    * jsp一共有9個內置對象。

    變量名真實類型作用
    pageContextPageContext當前頁面共享數據,還可以獲取其他八個內置對象
    requestHttpServletRequest一次請求訪問的多個資源(轉發)間共享數據。
    sessionHttpSession一次會話的多個請求間共享數據
    applicationServletContext所有用戶間共享數據
    responseHttpServletResponseresponse 代表的是對客戶端的響應,主要是將JSP容器處理過的對象傳回到客戶端。只在JSP??內有效。
    pageObject當前頁面(Servlet)的對象,類似于this
    outJspWriter輸出對象,數據輸出到頁面上
    configServletConfig主要作?是取得服務器的配置信息。通過 pageConext對象的 getServletConfig() ?法可以獲取?個config對象。當?個Servlet 初始化時,容器把某些信息通過config對象傳遞給這個Servlet。 開發者可以在web.xml ?件中為應?程序環境中的Servlet程序和JSP??提供初始化參數。
    exceptionThrowableexception 對象的作?是顯示異常信息,只有在包含 isErrorPage=“true” 的??中才可以被使?,通常用于打印錯誤信息輸出到日志文件,exception.getMessage()
    • out:字符輸出流對象。可以將數據輸出到頁面上。和response.getWriter()類似
      * response.getWriter()和out.write()的區別:
      * 在tomcat服務器真正給客戶端做出響應之前,會先找response緩沖區數據,再找out緩沖區數據。
      * response.getWriter()數據輸出永遠在out.write()之前。

    九、 EL &JSTL

    1. EL表達式

  • 概念:Expression Language 表達式語言
  • 作用:替換和簡化jsp頁面中java代碼的編寫
  • 語法:${表達式}
  • 注意:
    • jsp默認支持el表達式的。如果要忽略el表達式
    • 設置jsp中page指令中:isELIgnored=“true” 忽略當前jsp頁面中所有的el表達式
    • ${表達式} :忽略當前這個el表達式
  • 使用:
  • 運算:
    • 運算符:
    • 算數運算符: + - * /(div) %(mod)
      ${30 + 40}
      ${20 div 5}
    • 比較運算符: > < >= <= == !=
    • 邏輯運算符: &&(and) ||(or) !(not)
    • 空運算符: empty
      • 功能:用于判斷字符串、集合、數組對象是否為null或者長度是否為0
      • ${empty list}:判斷字符串、集合、數組對象是否為null或者長度為0
      • ${not empty str}:表示判斷字符串、集合、數組對象是否不為null 并且 長度>0
  • 獲取值
  • el表達式只能從域對象中獲取值
  • 語法:
  • ${域名稱.鍵名}:從指定域中獲取指定鍵的值

    • 域名稱:
    • pageScope --> pageContext
    • requestScope --> request
    • sessionScope --> session
    • applicationScope --> application(ServletContext)
    • 舉例:在request域中存儲了name=張三
    • 獲取:${requestScope.name}
  • ${鍵名}:表示依次從最小的域中查找是否有該鍵對應的值,直到找到為止。

  • 獲取對象、List集合、Map集合的值

  • 對象:${域名稱.鍵名.屬性名}

    • 本質上會去調用對象的getter方法
  • List集合:${域名稱.鍵名[索引]}

    • 索引越界會返回空字符
  • Map集合:

    • ${域名稱.鍵名.key名稱}
    • ${域名稱.鍵名[“key名稱”]}
  • 隱式對象:
    * el表達式中有11個隱式對象
    * pageScope
    * requestScope
    * sessionScope
    * applicationScope
    * pageContext:
    * 獲取jsp其他八個內置對象
    * ${pageContext.request.contextPath}:動態獲取虛擬目錄
  • 2. JSTL

    (1) 什么是JSTL
    JSP標準標簽庫(JSTL)是?個JSP標簽集合,它封裝了JSP應?的通?核?功能。
    JSTL?持通?的、結構化的任務,?如迭代,條件判斷,XML?檔操作,國際化標簽,SQL標簽。 除了這些,它還提供了?個框架來使?集成JSTL的?定義標簽。
    根據JSTL標簽所提供的功能,可以將其分為5個類別。核?標簽 格式化標簽 sql標簽 xml標簽 jstl函數(后?詳細解釋)
    (2) JSTL的作?和語法格式
    作?:用于簡化和替換jsp頁面上的java代碼
    語法格式:

  • 下載 jakarta-taglibs-standard-1.1.2.zip 包并解壓,將 jakarta-taglibs-standard-1.1.2/lib/ 下的兩
    個 jar ?件:standard.jar 和 jstl.jar ?件拷?到 /WEB-INF/lib/ 下。

  • 在JSP??中引?<%@ taglib prefix=”??使?的名稱” uri=”功能范圍的路徑”%>

  • 常用的JSTL標簽

    • 核?標簽
      核?標簽是最常?的 JSTL標簽。引?核?標簽庫的語法如下:
      <%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
    • if:相當于java代碼的if語句

    • 屬性:
      • test 必須屬性,接受boolean表達式
        • 如果表達式為true,則顯示if標簽體內容,如果為false,則不顯示標簽體內容
        • 一般情況下,test屬性值會結合el表達式一起使用
    • 注意:
      • c:if標簽沒有else情況,想要else情況,則可以再定義一個c:if標簽
    • choose:相當于java代碼的switch語句

    • 使用choose標簽聲明 相當于switch聲明
    • 使用when標簽做判斷 相當于case
    • 使用otherwise標簽做其他情況的聲明 相當于default
    • foreach:相當于java代碼的for語句

  • 代碼案例:

    <%@ page import="java.util.List" %> <%@ page import="java.util.ArrayList" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><html> <head><title>if標簽</title> </head> <body><%--c:if標簽1. 屬性:* test 必須屬性,接受boolean表達式* 如果表達式為true,則顯示if標簽體內容,如果為false,則不顯示標簽體內容* 一般情況下,test屬性值會結合el表達式一起使用2. 注意:c:if標簽沒有else情況,想要else情況,則可以在定義一個c:if標簽--%><c:if test="true"><h1>我是真...</h1></c:if><br><%//判斷request域中的一個list集合是否為空,如果不為null則顯示遍歷集合List list = new ArrayList();list.add("aaaa");request.setAttribute("list",list);request.setAttribute("number",4);%><c:if test="${not empty list}">遍歷集合...</c:if><br><c:if test="${number % 2 != 0}">${number}為奇數</c:if><c:if test="${number % 2 == 0}">${number}為偶數</c:if></body> </html>


    代碼案例:

    <%@ page contentType="text/html;charset=UTF-8" language="java" %><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><html> <head><title>choose標簽</title> </head> <body><%--完成數字編號對應星期幾案例1.域中存儲一數字2.使用choose標簽取出數字 相當于switch聲明3.使用when標簽做數字判斷 相當于case4.otherwise標簽做其他情況的聲明 相當于default--%><%request.setAttribute("number",51);%><c:choose><c:when test="${number == 1}">星期一</c:when><c:when test="${number == 2}">星期二</c:when><c:when test="${number == 3}">星期三</c:when><c:when test="${number == 4}">星期四</c:when><c:when test="${number == 5}">星期五</c:when><c:when test="${number == 6}">星期六</c:when><c:when test="${number == 7}">星期天</c:when><c:otherwise>數字輸入有誤</c:otherwise></c:choose></body> </html>


    代碼案例:

    <%@ page import="java.util.ArrayList" %> <%@ page import="java.util.List" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><html> <head><title>foreach標簽</title> </head> <body><%--foreach:相當于java代碼的for語句1. 完成重復的操作for(int i = 0; i < 10; i ++){}* 屬性:begin:開始值end:結束值var:臨時變量step:步長varStatus:循環狀態對象index:容器中元素的索引,從0開始count:循環次數,從1開始2. 遍歷容器List<User> list;for(User user : list){}* 屬性:items:容器對象var:容器中元素的臨時變量varStatus:循環狀態對象index:容器中元素的索引,從0開始count:循環次數,從1開始--%><c:forEach begin="1" end="10" var="i" step="2" varStatus="s">${i} <h3>${s.index}<h3> <h4> ${s.count} </h4><br></c:forEach><hr><%List list = new ArrayList();list.add("aaa");list.add("bbb");list.add("ccc");request.setAttribute("list",list);%><c:forEach items="${list}" var="str" varStatus="s">${s.index} ${s.count} ${str}<br></c:forEach></body> </html>
  • 格式化標簽
    1、fmt:formatDate 作?:將?期類型格式化為指定模式的字符串
    屬性
    value:將要被格式化的數據
    pattern:格式化的模式,與SimpleDateFormat的參數設置?樣
    var:格式化后的字符串所要存放的變量,若不指定var,則會將格式化的結果直接顯示在??
    scope:變量存放的域屬性空間,默認page
    type:其取值為date、time、both,表示給出的value是?期、時間、還是兩者都包含,默認是date
  • 代碼案例:

    <%@ page import="java.util.Date" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %><%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <html> <head><title>Title</title> </head> <body><%pageContext.setAttribute("mytime",new Date());%>date=<fmt:formatDate value="${mytime}" pattern="yyyy-MM-dd"></fmt:formatDate> </body> </html>

    十、Filter

  • 概念:

    • 生活中的過濾器:凈水器,空氣凈化器,土匪、
    • web中的過濾器:當訪問服務器的資源時,過濾器可以將請求攔截下來,完成一些特殊的功能。
    • 過濾器的作用:
      • 一般用于完成通用的操作。如:登錄驗證、統一編碼處理、敏感字符過濾…
  • 快速入門:

  • 步驟:
  • 定義一個類,實現接口Filter
  • 復寫方法
  • 配置攔截路徑
  • web.xml
  • 注解
  • 代碼:
  • @WebFilter("/*")//訪問所有資源之前,都會執行該過濾器public class FilterDemo1 implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException { } @Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {System.out.println("filterDemo1被執行了....");//放行filterChain.doFilter(servletRequest,servletResponse);}@Overridepublic void destroy() {}}
  • 過濾器細節:

  • web.xml配置

    demo1
    cn.itcast.web.filter.FilterDemo1


    demo1

    /*

  • 過濾器執行流程

  • 執行過濾器
  • 執行放行后的資源
  • 回來執行過濾器放行代碼下邊的代碼
  • 過濾器生命周期方法

  • init:在服務器啟動后,會創建Filter對象,然后調用init方法。只執行一次。用于加載資源
  • doFilter:每一次請求被攔截資源時,會執行。執行多次
  • destroy:在服務器關閉后,Filter對象被銷毀。如果服務器是正常關閉,則會執行destroy方法。只執行一次。用于釋放資源
  • 過濾器配置詳解

    • 攔截路徑配置:
    • 具體資源路徑: /index.jsp 只有訪問index.jsp資源時,過濾器才會被執行
    • 攔截目錄: /user/* 訪問/user下的所有資源時,過濾器都會被執行
    • 后綴名攔截: *.jsp 訪問所有后綴名為jsp資源時,過濾器都會被執行
    • 攔截所有資源:/* 訪問所有資源時,過濾器都會被執行
    • 攔截方式配置:資源被訪問的方式
      • 注解配置:
        • 設置dispatcherTypes屬性
        • REQUEST:默認值。瀏覽器直接請求資源
        • FORWARD:轉發訪問資源
        • INCLUDE:包含訪問資源
        • ERROR:錯誤跳轉資源
        • ASYNC:異步訪問資源

      //瀏覽器直接請求index.jsp資源時,該過濾器會被執行
      //@WebFilter(value="/index.jsp",dispatcherTypes = DispatcherType.REQUEST)
      //只有轉發訪問index.jsp時,該過濾器才會被執行
      //@WebFilter(value="/index.jsp",dispatcherTypes = DispatcherType.FORWARD)
      //瀏覽器直接請求index.jsp或者轉發訪問index.jsp。該過濾器才會被執行
      //@WebFilter(value="/*",dispatcherTypes ={ DispatcherType.FORWARD,DispatcherType.REQUEST})

    • web.xml配置設置<dispatcher></dispatcher>標簽即可 如: <filter-mapping><filter-name>demo1</filter-name><url-pattern>/*</url-pattern><dispatcher>REQUEST</dispatcher></filter-mapping>
  • 過濾器鏈(配置多個過濾器)

    • 執行順序:如果有兩個過濾器:過濾器1和過濾器2

    • 過濾器1
    • 過濾器2
    • 資源執行
    • 過濾器2
    • 過濾器1
    • 過濾器先后順序問題:

    • 注解配置:按照類名的字符串比較規則比較,值小的先執行
      • 如: AFilter 和 BFilter,AFilter就先執行了。
    • web.xml配置:<filter-mapping>誰定義在上邊,誰先執行
    • 使?場景
      1.如何防??戶未登錄就執?后續操作
      String name=(String)session.getAttribute(“key”);
      if(name==null){
      //跳轉到登錄??
      }
      2.設置編碼?式–統?設置編碼
      3.加密解密(密碼的加密和解密)
      4.?法?字篩選
      5.下載資源的限制
      過濾器的特點:在servlet之前和之后都會被執?

    十一、Listener

    1.什么是監聽器
    監聽器就是監聽某個域對象的的狀態變化的組件
    監聽器的相關概念:
    事件源:被監聽的對象(三個域對象 request、session、servletContext)
    監聽器:監聽事件源對象事件源對象的狀態的變化都會觸發監聽器
    注冊監聽器:將監聽器與事件源、事件進?綁定。事件源上發生某個事件后,執行監聽器代碼
    響應?為:監聽器監聽到事件源的狀態變化時所涉及的功能代碼(程序員編寫代碼)

    • ServletContextListener:監聽ServletContext對象的創建和銷毀
      • 方法:
        • void contextDestroyed(ServletContextEvent sce) :ServletContext對象被銷毀之前會調用該方法
        • void contextInitialized(ServletContextEvent sce) :ServletContext對象創建后會調用該方法
      • 步驟:
      • 定義一個類,實現ServletContextListener接口
      • 復寫方法
      • 配置1. web.xml<listener><!-- 監聽器所在的路徑 --><listener-class>cn.itcast.web.listener.ContextLoaderListener</listener-class></listener>2. 注解:* @WebListener

    2.監聽器分類

    3.監聽三?域對象的創建與銷毀的監聽器

    • ServletContextListener
      監聽ServletContext域的創建與銷毀的監聽器
      Servlet域的?命周期
      何時創建:服務器啟動創建
      何時銷毀:服務器關閉銷毀
      ServletContextListener監聽器的主要作?
      初始化的?作:初始化對象、初始化數據(加載數據庫驅動、連接池的初始化)
      加載?些初始化的配置?件(spring的配置?件)
      任務調度(定時器—Timer/TimerTask)
    • HttpSessionListener
      監聽Httpsession域的創建和銷毀的監聽器
      HttpSession對象的?命周期
      何時創建:第?次調?request.getSession時創建
      何時銷毀:服務器關閉銷毀、session過期(默認30分鐘,修改默認的30分鐘是在
      Tomcat的web.xml,修改當前項?的過期時間是在??項?的web.xml中)、?動銷毀
      HttpSessionListener監聽器的主要作?:
      由于每次訪問?站都會默認創建session對象(jsp??中page指令中的session屬性默認為
      true,即被訪問時創建session),可以?于計數?站訪問過的?
    • ServletRequestListener
      監聽ServletRequest域創建與銷毀的監聽器
      ServletRequest的?命周期
      創建:每?次請求都會創建request
      銷毀:請求結束
      ?法同上,?處不是很?,此處省略。

    十二、 MVC和三層架構

    1.MVC設計模式

  • jsp演變歷史
  • 早期只有servlet,只能使用response輸出標簽數據,非常麻煩
  • 后來又jsp,簡化了Servlet的開發,如果過度使用jsp,在jsp中即寫大量的java代碼,有寫html表,造成難于維護,難于分工協作
  • 再后來,java的web開發,借鑒mvc開發模式,使得程序的設計更加合理性
  • MVC:
  • M:Model,模型。JavaBean
    • 完成具體的業務操作,如:查詢數據庫,封裝對象
  • V:View,視圖。JSP
    • 展示數據
  • C:Controller,控制器。Servlet
    • 獲取用戶的輸入
    • 調用模型
    • 將數據交給視圖進行展示
    • 優缺點:

      1. 優點:1. 耦合性低,方便維護,可以利于分工協作2. 重用性高2. 缺點:1. 使得項目架構變得復雜,對開發人員要求高

    JavaBeans :是Java中?種特殊的類(換?之:JavaBean就是?個Java類).
    ?個Java類 ,滿?以下要求,則可稱為?個JavaBean
    a. public修飾的類,提供public ?參構造?法
    b. 所有屬性 都是private
    C. 提供getter和setter?法
    從使?層?來看,JavaBean分為2?類:
    a. 封裝業務邏輯的JavaBean(eg:LoginDao.java 封裝了登錄邏輯)
    b. 封裝數據的JavaBean(實體類:eg:Student.java Vadio.java 。往往對應于數據庫中的?張
    表,即數據庫中有個Student表,項?中就有個Student.java類)通常:表名=類名,列名=屬性名
    JavaBean是?個可以重復使?的組件,通過編寫?個組件來實現某種通?功能,“?次編寫、任何地?執?、任何地?重?”。

    2.三層架構
    三層架構 通常意義上的三層架構就是將整個業務應?劃分為:表現層(UI)、業務邏輯層(BLL)、數據訪問層(DAL)。區分層次的?的即為了“?內聚,低耦合”的思想。
    1、表現層(UI):通俗講就是展現給?戶的界?,即?戶在使??個系統的時候他的所?所得。
    jsp/html
    2、業務邏輯層(BLL):針對具體問題的操作,也可以說是對數據層的操作,對數據業務邏輯處理。
    servlet,service
    3、數據訪問層(DAL):該層所做事務直接操作數據庫,針對數據的增添、刪除、修改、更新、查找
    等。dao
    表現層實現的代表作品是Struts,springmvc框架,
    業務層實現的代表作品是Spring,
    持久層實現的代表作品是Hibernate,mybatis。
    層就相當于?個?盒?,我們不?知道它內部怎么實現,只需要知道如何去調?它就?了。每層只與上下相鄰的兩層打交道。當?層內部由于技術變遷發?變化時,只要接?不變,其他層不?做任何改變。分層之后靈活性提?,也便于團隊分?開發。

    3.三層架構和MVC的區別與聯系

    MVC可以是三層中的?個表現層框架,屬于表現層。三層和mvc可以共存。
    三層是基于業務邏輯來分的,?MVC是基于??來分的。
    MVC主要?于表現層,3層主要?于體系架構,3層?般是表現層、中間層、數據層,其中表現層?可以分成M、V、C,(Model View Controller)模型-視圖-控制器
    MVC是表現模式(Presentation Pattern)
    三層架構是典型的架構模式(Architecture Pattern)
    三層架構的分層模式是典型的上下關系,上層依賴于下層。但MVC作為表現模式是不存在上下關系的,?是相互協作關系。即使將MVC當作架構模式,也不是分層模式。MVC和三層架構基本沒有可?性,是應?于不同領域的技術。

    十三、Ajax

    1. 概念: ASynchronous JavaScript And XML 異步的JavaScript 和 XML
    Ajax 是一種在無需重新加載整個網頁的情況下,能夠更新部分網頁的技術。
    通過在后臺與服務器進行少量數據交換,Ajax 可以使網頁實現異步更新。這意味著可以在不重新加載整個網頁的情況下,對網頁的某部分進行更新。
    傳統的網頁(不使用 Ajax)如果需要更新內容,必須重載整個網頁頁面。
    功能:提升用戶的體驗

    異步和同步:客戶端和服務器端相互通信的基礎上
    * 同步: 客戶端必須等待服務器端的響應。在等待的期間客戶端不能做其他操作。
    * 異步:客戶端不需要等待服務器端的響應。在服務器處理請求的過程中,客戶端可以進行其他的操作。
    * 瀏覽器的普通交互?式(同步)

    2.工作原理:
    1.客戶端瀏覽器發送JS請求Ajax引擎。
    2.Ajax將JS請求轉換成HTTP請求。
    3.服務器對接收到的數據進行處理。
    4.服務器返回XML、JSON或文本文檔類型的數據給Ajax引擎。
    5.AJax引擎接收服務器返回的數據進行渲染。

    3. 實現方式:
    (1)原生的JS實現方式(了解)

    AJAX 的核?是 XMLHttpRequest 對象。
    不同的瀏覽器創建 XMLHttpRequest 對象的?法是有差異的。
    IE 6及以下瀏覽器使? ActiveXObject,?其他的瀏覽器使?名為 XMLHttpRequest 的 JavaScript 內建對象

    //1.創建核心對象var xmlhttp;if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safarixmlhttp=new XMLHttpRequest();}else{// code for IE6, IE5xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}//2. 建立連接/*參數:1. 請求方式:GET、POST* get方式,請求參數在URL后邊拼接。send方法為空參* post方式,請求參數在send方法中定義2. 請求的URL:3. 同步或異步請求:true(異步)或 false(同步)*/xmlhttp.open("GET","ajaxServlet?username=tom",true);//3.發送請求xmlhttp.send();//4.接受并處理來自服務器的響應結果//獲取方式 :xmlhttp.responseText//什么時候獲取?當服務器響應成功后再獲取//當xmlhttp對象的就緒狀態改變時,觸發事件onreadystatechange。xmlhttp.onreadystatechange=function(){//判斷readyState就緒狀態是否為4,判斷status響應狀態碼是否為200if (xmlhttp.readyState==4 && xmlhttp.status==200){//獲取服務器的響應結果var responseText = xmlhttp.responseText;alert(responseText);}}
    • XMLHttpRequest常?屬性
      • onreadystatechange 屬性
        onreadystatechange 屬性存有處理服務器響應的函數。
      xmlHttp.onreadystatechange = function() { }
      • readyState 屬性
        readyState 屬性存有服務器響應的狀態信息。每當 readyState 改變時,onreadystatechange 函數就會
        被執?。
        readyState 屬性可能的值:
      • responseText 屬性
        可以通過 responseText 屬性來取回由服務器返回的數據。

    AJAX狀態碼說明
    1xx:請求收到,繼續處理
    2xx:操作成功收到,分析、接受
    3xx:完成此請求必須進?步處理
    4xx:請求包含?個錯誤語法或不能完成
    5xx:服務器執??個 完全有效請求 失敗
    再具體就如下:
    100——客戶必須繼續發出請求
    101——客戶要求服務器根據請求轉換HTTP協議版本
    200——交易成功
    201——提示知道新?件的URL
    202——接受和處理、但處理未完成
    203——返回信息不確定或不完整
    204——請求收到,但返回信息為空
    205——服務器完成了請求,?戶代理必須復位當前已經瀏覽過的?件
    206——服務器已經完成了部分?戶的GET請求
    300——請求的資源可在多處得到
    301——刪除請求數據
    302——在其他地址發現了請求數據
    303——建議客戶訪問其他URL或訪問?式
    304——客戶端已經執?了GET,但?件未變化
    305——請求的資源必須從服務器指定的地址得到
    306——前?版本HTTP中使?的代碼,現?版本中不再使?
    307——申明請求的資源臨時性刪除
    400——錯誤請求,如語法錯誤
    401——請求授權失敗
    402——保留有效ChargeTo頭響應
    403——請求不允許
    404——沒有發現?件、查詢或URl
    405——?戶在Request-Line字段定義的?法不允許
    406——根據?戶發送的Accept拖,請求資源不可訪問
    407——類似401,?戶必須?先在代理服務器上得到授權
    408——客戶端沒有在?戶指定的餓時間內完成請求
    409——對當前資源狀態,請求不能完成
    410——服務器上不再有此資源且?進?步的參考地址
    411——服務器拒絕?戶定義的Content-Length屬性請求
    412——?個或多個請求頭字段在當前請求中錯誤
    413——請求的資源?于服務器允許的??
    414——請求的資源URL?于服務器允許的?度
    415——請求資源不?持請求項?格式
    416——請求中包含Range請求頭字段,在當前請求資源范圍內沒有range指示值,請求也不包含IfRange請求頭字段
    417——服務器不滿?請求Expect頭字段指定的期望值,如果是代理服務器,可能是下?級服務器不能
    滿?請求
    500——服務器產?內部錯誤
    501——服務器不?持請求的函數
    502——服務器暫時不可?,有時是為了防?發?系統過載
    503——服務器過載或暫停維修
    504——關?過載,服務器使?另?個關?或服務來響應?戶,等待時間設定值較?
    505——服務器不?持或拒絕?請求頭中指定的HTTP版本

    (2).JQeury實現方式

    1. $.ajax()* 語法:$.ajax({鍵值對});//使用$.ajax()發送異步請求$.ajax({url:"ajaxServlet1111" , // 請求路徑type:"POST" , //請求方式//data: "username=jack&age=23",//請求參數data:{"username":"jack","age":23},success:function (data) {alert(data);},//響應成功后的回調函數error:function () {alert("出錯啦...")},//表示如果請求響應出現錯誤,會執行的回調函數dataType:"text"//設置接受到的響應數據的格式(預期服務器返回的數據類型)});2. $.get():發送get請求* 語法:$.get(url, [data], [callback], [type])* 參數:* url:請求路徑* data:請求參數* callback:回調函數* type:響應結果的類型(預期服務器返回的數據類型)3. $.post():發送post請求* 語法:$.post(url, [data], [callback], [type])* 參數:* url:請求路徑* data:請求參數* callback:回調函數* type:響應結果的類型

    十四、JSON

    1. 概念: JavaScript Object Notation (JavaScript對象表示法)
    JSON (JavaScript Object Notation) 是?種輕量級的數據交換格式。 易于?閱讀和編寫。同時也易于機器解析和?成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition -December 1999的?個?集。 JSON采?完全獨?于語?的?本格式,但是也使?了類似于C語?家族的習慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 這些特性使JSON成為理想的數據交換語?。

    * json現在多用于存儲和交換文本信息的語法 * 進行數據的傳輸 * JSON 比 XML 更小、更快,更易解析。

    1.jackson

  • 語法:

  • 基本規則
    • 數據在名稱/值對中:json數據是由鍵值對構成的
      • 鍵用引號(單雙都行)引起來,也可以不使用引號
      • 值得取值類型:
      • 數字(整數或浮點數)
      • 字符串(在雙引號中)
      • 邏輯值(true 或 false)
      • 數組(在方括號中) {“persons”:[{},{}]}
      • 對象(在花括號中) {“address”:{“province”:“陜西”…}}
      • null
    • 數據由逗號分隔:多個鍵值對由逗號分隔
    • 花括號保存對象:使用{}定義json 格式
    • 方括號保存數組:[]
  • 獲取數據:
  • json對象.鍵名

  • json對象[“鍵名”]

  • 數組對象[索引]

  • 遍歷
    //1.定義基本格式

    var person = {"name": "張三", age: 23, 'gender': true};var ps = [{"name": "張三", "age": 23, "gender": true},{"name": "李四", "age": 24, "gender": true},{"name": "王五", "age": 25, "gender": false}];//獲取person對象中所有的鍵和值//for in 循環 /* for(var key in person){//這樣的方式獲取不行。因為相當于 person."name"//alert(key + ":" + person.key);alert(key+":"+person[key]);}*///獲取ps中的所有值for (var i = 0; i < ps.length; i++) {var p = ps[i];for(var key in p){alert(key+":"+p[key]);}}
  • JSON數據和Java對象的相互轉換

    • JSON解析器:
      • 常見的解析器:Jsonlib,Gson,fastjson,jackson
  • JSON轉為Java對象(jackson)
  • 導入jackson的相關jar包

  • 創建Jackson核心對象 ObjectMapper

  • 調用ObjectMapper的相關方法進行轉換

  • readValue(json字符串數據,Class)
  • Java對象轉換JSON
  • 使用步驟:
  • 導入jackson的相關jar包
  • 創建Jackson核心對象 ObjectMapper
  • 調用ObjectMapper的相關方法進行轉換
  • 轉換方法:

    • writeValue(參數1,obj):
      參數1:
      File:將obj對象轉換為JSON字符串,并保存到指定的文件中
      Writer:將obj對象轉換為JSON字符串,并將json數據填充到字符輸出流中
      OutputStream:將obj對象轉換為JSON字符串,并將json數據填充到字節輸出流中
    • writeValueAsString(obj):將對象轉為json字符串
  • 注解:

  • @JsonIgnore:被此注解標注的屬性將不再被轉為JSON格式
  • @JsonFormat:屬性值的格式化
    • @JsonFormat(pattern = “yyyy-MM-dd”) 如日期對象格式化,pattern用法與SimpleDateFormat類似
  • 復雜java對象轉換

  • List:數組 存儲的為對象則為對象數組 [{“key”:“value”},{“key”:“value”},{“key”:“value”}]
  • Map:與對象格式一致
  • 案例:
    Person類:

    public class Person {private String name;private int age ;private String gender;//@JsonIgnore // 忽略該屬性@JsonFormat(pattern = "yyyy-MM-dd")private Date birthday;public Person(String name, int age, String gender) {this.name = name;this.age = age;this.gender = gender;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}@Overridepublic String toString() {return "Person{" +"name='" + name + '\'' +", age=" + age +", gender='" + gender + '\'' +'}';} }

    測試類

    public class JacksonTest {//Java對象轉為JSON字符串@Testpublic void test1() throws Exception {//1.創建Person對象Person p = new Person();p.setName("張三");p.setAge(23);p.setGender("男");//2.創建Jackson的核心對象 ObjectMapperObjectMapper mapper = new ObjectMapper();//3.轉換/*轉換方法:writeValue(參數1,obj):參數1:File:將obj對象轉換為JSON字符串,并保存到指定的文件中Writer:將obj對象轉換為JSON字符串,并將json數據填充到字符輸出流中OutputStream:將obj對象轉換為JSON字符串,并將json數據填充到字節輸出流中writeValueAsString(obj):將對象轉為json字符串*/String json = mapper.writeValueAsString(p);//{"name":"張三","age":23,"gender":"男"}//System.out.println(json);//{"name":"張三","age":23,"gender":"男"}//writeValue,將數據寫到d://a.txt文件中//mapper.writeValue(new File("d://a.txt"),p);//writeValue.將數據關聯到Writer中mapper.writeValue(new FileWriter("d://b.txt"),p);}@Testpublic void test2() throws Exception {//1.創建Person對象Person p = new Person();p.setName("張三");p.setAge(23);p.setGender("男");p.setBirthday(new Date());//2.轉換 Object -> JSONObjectMapper mapper = new ObjectMapper();String json = mapper.writeValueAsString(p);System.out.println(json);//{"name":"張三","age":23,"gender":"男","birthday":1530958029263}//{"name":"張三","age":23,"gender":"男","birthday":"2018-07-07"}}// List集合 - > JSON Set集合類似@Testpublic void test3() throws Exception {//1.創建Person對象Person p = new Person();p.setName("張三");p.setAge(23);p.setGender("男");p.setBirthday(new Date());Person p1 = new Person();p1.setName("張三");p1.setAge(23);p1.setGender("男");p1.setBirthday(new Date());Person p2 = new Person();p2.setName("張三");p2.setAge(23);p2.setGender("男");p2.setBirthday(new Date());//創建List集合List<Person> ps = new ArrayList<Person>();ps.add(p);ps.add(p1);ps.add(p2);//2.轉換ObjectMapper mapper = new ObjectMapper();// List -> JSONString json = mapper.writeValueAsString(ps);// [{},{},{}]//[{"name":"張三","age":23,"gender":"男","birthday":"2018-07-07"},{"name":"張三","age":23,"gender":"男","birthday":"2018-07-07"},{"name":"張三","age":23,"gender":"男","birthday":"2018-07-07"}]System.out.println(json);// JSON -> ListList<Person> list = mapper.readValue(json, new TypeReference<List<Person>>() {}); // class java.util.ArrayListfor (Person pp : list) {System.out.println(pp);}}//Map集合 -> JSON@Testpublic void test4() throws Exception {//1.創建map對象Map<String,Object> map = new HashMap<String,Object>();map.put("name","張三");map.put("age",23);map.put("gender","男");//2.轉換 map -> JSONObjectMapper mapper = new ObjectMapper();String json = mapper.writeValueAsString(map);//{"name":"張三","age":23,"gender":"男"}System.out.println(json);//{"gender":"男","name":"張三","age":23}// JSON -> Map//方式一: //class java.util.LinkedHashMapMap<String,Object> hm = mapper.readValue(json, Map.class);//方式二: //class java.util.LinkedHashMap//Map<String, Object> lhm= mapper.readValue(json, new TypeReference<Map<String, Object>>() {}); Set<String> set = hm.keySet();for (String str : set) {System.out.println(str + ":" + hm.get(str));}}//演示 JSON字符串轉為Java對象@Testpublic void test5() throws Exception {//1.初始化JSON字符串String json = "{\"gender\":\"男\",\"name\":\"張三\",\"age\":23}";//2.創建ObjectMapper對象ObjectMapper mapper = new ObjectMapper();//3.轉換為Java對象 Person對象Person person = mapper.readValue(json, Person.class);System.out.println(person);}/*** 將數組轉換成json字符串* [{"name":"張三","age":23,"gender":"男"},{"name":"李四","age":24,"gender":"女"},{"name":"王五","age":25,"gender":"男"}]* @throws Exception*/@Testpublic void test6() throws Exception {Person p1 = new Person("張三", 23, "男");Person p2 = new Person("李四", 24, "女");Person p3 = new Person("王五", 25, "男");Person[] persons = {p1, p2, p3};ObjectMapper mapper = new ObjectMapper();// Array -> JSONString json= mapper.writeValueAsString(persons);System.out.println(json);// JSON ->ArrayPerson[] persons = mapper.readValue(json, Person[].class); // [Lcn.itcast.domain.Person;@43195e57String content = "";for (Person person : persons) {content+=person + " ";}System.out.println(content);}}

    2.Jsonlib

  • JSON轉為Java對象
    1. 導入Jsonlib的相關jar包

    java對象和json之間的轉換
    《1》單個對象或map集合
    java->json:

    Users user2=new Users();
    user2.setUsername(“李四”);
    user2.setPassword(“abc”);
    user2.setAge(20);
    JSONObject obj=JSONObject.fromObject(user);//obj就是json格式的

    json->java:

    String str="{‘username’:‘李四’,‘password’:‘admin’,‘age’:19}";
    JSONObject json=JSONObject.fromObject(str);
    Users user=(Users)JSONObject.toBean(json,Users.class);

  • 《2》對象集合和json的轉換
    java集合->json數組:

    List list=new ArrayList();
    list.add(“dd”);
    list.add(“aa”);
    JSONArray obj=JSONArray.fromObject(list);//set也是這么轉

    json數組->java集合:
    ?式1:
    String str2="[{‘age’:20,‘password’:‘abc’,‘username’:‘李四’},
    {‘age’:10,‘password’:‘adb’,‘username’:‘張三’}]";
    JSONArray json2=JSONArray.fromObject(str2);
    Object[] obj=(Object[])JSONArray.toArray(json2,Users.class);
    ?式2:
    String str3="[{‘age’:20,‘password’:‘abc’,‘username’:‘李四’},
    {‘age’:10,‘password’:‘adb’,‘username’:‘展示?’}]";
    JSONArray json3=JSONArray.fromObject(str3);
    //默認轉換成ArrayList
    List list=(List) JSONArray.toCollection(json3,Users.class);

    感謝您能閱讀至此!!respect!!!!

    總結

    以上是生活随笔為你收集整理的那些年关于JavaWeb的点点滴滴,你想看的这里全都有噢~的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    成人一在线视频日韩国产 | 亚洲成av人片在线观看无码不卡 | 精品夜夜澡人妻无码av蜜桃 | 麻豆md0077饥渴少妇 | 麻豆国产丝袜白领秘书在线观看 | 亚洲gv猛男gv无码男同 | 丝袜人妻一区二区三区 | 久久亚洲精品中文字幕无男同 | 欧美自拍另类欧美综合图片区 | 久久综合久久自在自线精品自 | 无码人妻久久一区二区三区不卡 | 一区二区三区乱码在线 | 欧洲 | 国产精品人人妻人人爽 | 成人性做爰aaa片免费看 | 日韩av激情在线观看 | 天天综合网天天综合色 | 性做久久久久久久久 | 蜜臀av在线播放 久久综合激激的五月天 | 亚洲日韩av片在线观看 | 亚洲国产成人a精品不卡在线 | 丰满人妻一区二区三区免费视频 | 在线观看国产一区二区三区 | 一本大道久久东京热无码av | 国色天香社区在线视频 | 亚洲中文字幕乱码av波多ji | 男女猛烈xx00免费视频试看 | 性欧美疯狂xxxxbbbb | 国产在热线精品视频 | 呦交小u女精品视频 | 精品人人妻人人澡人人爽人人 | 国产午夜精品一区二区三区嫩草 | 中文字幕日韩精品一区二区三区 | 精品一二三区久久aaa片 | 国产在热线精品视频 | 色一情一乱一伦 | 蜜桃av抽搐高潮一区二区 | 人妻少妇精品无码专区二区 | 学生妹亚洲一区二区 | 久久亚洲精品中文字幕无男同 | 午夜福利一区二区三区在线观看 | 麻豆成人精品国产免费 | 97人妻精品一区二区三区 | 国产精品人人爽人人做我的可爱 | √8天堂资源地址中文在线 | 青草青草久热国产精品 | 亚洲伊人久久精品影院 | 国产精品二区一区二区aⅴ污介绍 | 成人无码精品一区二区三区 | 日本精品久久久久中文字幕 | 暴力强奷在线播放无码 | 国产精品丝袜黑色高跟鞋 | 日本www一道久久久免费榴莲 | 国产美女极度色诱视频www | 18精品久久久无码午夜福利 | 国产香蕉尹人综合在线观看 | 精品日本一区二区三区在线观看 | 无套内谢的新婚少妇国语播放 | 亚洲日本va午夜在线电影 | 国产精品久久久久7777 | 精品人妻人人做人人爽夜夜爽 | 欧美激情综合亚洲一二区 | 黑人玩弄人妻中文在线 | 国产一区二区三区四区五区加勒比 | 少妇无码吹潮 | 亚洲精品一区国产 | 久久精品国产精品国产精品污 | 日本大乳高潮视频在线观看 | 扒开双腿吃奶呻吟做受视频 | 鲁鲁鲁爽爽爽在线视频观看 | 欧美丰满老熟妇xxxxx性 | 国产成人久久精品流白浆 | 久久精品中文字幕大胸 | 中文字幕乱妇无码av在线 | 在线成人www免费观看视频 | 国产精品人人爽人人做我的可爱 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 亚洲精品午夜国产va久久成人 | 乱人伦人妻中文字幕无码 | 欧美激情一区二区三区成人 | 久久精品成人欧美大片 | 国产精品国产自线拍免费软件 | 又大又黄又粗又爽的免费视频 | 少妇太爽了在线观看 | 亚洲中文无码av永久不收费 | 全球成人中文在线 | 国内少妇偷人精品视频 | 性欧美牲交在线视频 | 国产激情无码一区二区 | 久久精品一区二区三区四区 | 久久综合香蕉国产蜜臀av | 我要看www免费看插插视频 | 一本一道久久综合久久 | 午夜无码区在线观看 | 综合激情五月综合激情五月激情1 | 精品日本一区二区三区在线观看 | 精品一区二区三区波多野结衣 | 亚洲人成网站色7799 | 大地资源网第二页免费观看 | 少妇高潮喷潮久久久影院 | 中文字幕av无码一区二区三区电影 | 亚洲精品综合一区二区三区在线 | 国产成人无码a区在线观看视频app | 少妇性荡欲午夜性开放视频剧场 | 日日摸天天摸爽爽狠狠97 | 男人的天堂av网站 | 十八禁视频网站在线观看 | 欧美 丝袜 自拍 制服 另类 | 好男人社区资源 | 在线天堂新版最新版在线8 | 好爽又高潮了毛片免费下载 | 成人无码精品一区二区三区 | 国产麻豆精品一区二区三区v视界 | 精品一区二区不卡无码av | 亚洲一区二区三区香蕉 | 国产97色在线 | 免 | 亚洲精品综合五月久久小说 | 久久精品国产大片免费观看 | 欧美色就是色 | 午夜精品久久久久久久 | 久久天天躁狠狠躁夜夜免费观看 | 狠狠色欧美亚洲狠狠色www | 精品一二三区久久aaa片 | 久久午夜夜伦鲁鲁片无码免费 | 欧美成人免费全部网站 | 一本色道久久综合狠狠躁 | 国产精品理论片在线观看 | 18精品久久久无码午夜福利 | 激情内射日本一区二区三区 | 97精品国产97久久久久久免费 | 漂亮人妻洗澡被公强 日日躁 | 日本丰满熟妇videos | 国产精品99久久精品爆乳 | 国产亚洲精品久久久久久久久动漫 | 日本免费一区二区三区最新 | 欧美 日韩 人妻 高清 中文 | 中文精品无码中文字幕无码专区 | 国产精品国产三级国产专播 | 亚洲经典千人经典日产 | 少妇高潮喷潮久久久影院 | 18精品久久久无码午夜福利 | 国产办公室秘书无码精品99 | 欧美日韩在线亚洲综合国产人 | 国内综合精品午夜久久资源 | 扒开双腿疯狂进出爽爽爽视频 | 中文字幕中文有码在线 | 狠狠色噜噜狠狠狠狠7777米奇 | 最近的中文字幕在线看视频 | 精品国产一区av天美传媒 | 55夜色66夜色国产精品视频 | 中文无码伦av中文字幕 | √8天堂资源地址中文在线 | 久久久久亚洲精品男人的天堂 | 国产极品美女高潮无套在线观看 | 97精品人妻一区二区三区香蕉 | 国产明星裸体无码xxxx视频 | 久久国产精品萌白酱免费 | 中文字幕无码人妻少妇免费 | 西西人体www44rt大胆高清 | 免费视频欧美无人区码 | 人妻中文无码久热丝袜 | 中文字幕人妻无码一区二区三区 | 麻豆精品国产精华精华液好用吗 | 欧美熟妇另类久久久久久多毛 | 国产一区二区三区精品视频 | 亚洲无人区一区二区三区 | 亚洲中文字幕乱码av波多ji | 少妇厨房愉情理9仑片视频 | 性欧美疯狂xxxxbbbb | 国产无套内射久久久国产 | 亚洲欧洲中文日韩av乱码 | 丝袜人妻一区二区三区 | 伊人久久大香线蕉亚洲 | 双乳奶水饱满少妇呻吟 | 西西人体www44rt大胆高清 | 精品国产aⅴ无码一区二区 | 人人妻人人澡人人爽欧美一区九九 | 牲欲强的熟妇农村老妇女视频 | 无码国产激情在线观看 | 精品欧美一区二区三区久久久 | 青青草原综合久久大伊人精品 | 国产真人无遮挡作爱免费视频 | 国产亚av手机在线观看 | 国语自产偷拍精品视频偷 | 精品国产一区二区三区四区在线看 | 国产成人无码专区 | 性欧美牲交xxxxx视频 | 欧美自拍另类欧美综合图片区 | 欧美成人家庭影院 | 欧美日韩人成综合在线播放 | 久久久久成人片免费观看蜜芽 | 日本丰满护士爆乳xxxx | 精品厕所偷拍各类美女tp嘘嘘 | aa片在线观看视频在线播放 | 国产激情综合五月久久 | 国产精品久久久久久亚洲毛片 | 四虎4hu永久免费 | 国产精品国产三级国产专播 | 亚洲啪av永久无码精品放毛片 | 国产精品久久久久影院嫩草 | 成人aaa片一区国产精品 | 中文字幕无码免费久久99 | 女人被爽到呻吟gif动态图视看 | 精品久久久无码中文字幕 | 丰满诱人的人妻3 | 动漫av一区二区在线观看 | 亚洲另类伦春色综合小说 | 亚洲国产成人av在线观看 | 精品国产青草久久久久福利 | 六十路熟妇乱子伦 | 亚洲精品一区二区三区在线 | 大色综合色综合网站 | 亚洲色欲色欲欲www在线 | 两性色午夜视频免费播放 | 日本一卡2卡3卡四卡精品网站 | 丰满人妻一区二区三区免费视频 | 国产精品毛片一区二区 | 精品国产av色一区二区深夜久久 | 亚洲午夜无码久久 | 亚洲综合在线一区二区三区 | 夜夜躁日日躁狠狠久久av | 又黄又爽又色的视频 | 国产尤物精品视频 | 全黄性性激高免费视频 | 四十如虎的丰满熟妇啪啪 | 国产午夜手机精彩视频 | 鲁一鲁av2019在线 | 国产人妻人伦精品1国产丝袜 | 亚洲国产精华液网站w | 无遮挡啪啪摇乳动态图 | 六十路熟妇乱子伦 | 久久精品中文字幕大胸 | 又大又硬又爽免费视频 | 亚洲啪av永久无码精品放毛片 | 国产成人一区二区三区在线观看 | 欧美亚洲日韩国产人成在线播放 | 久久综合久久自在自线精品自 | 精品 日韩 国产 欧美 视频 | 国产精品二区一区二区aⅴ污介绍 | 中文字幕+乱码+中文字幕一区 | 九九综合va免费看 | 97夜夜澡人人爽人人喊中国片 | 青春草在线视频免费观看 | 亚洲gv猛男gv无码男同 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 久久久成人毛片无码 | 图片区 小说区 区 亚洲五月 | 99久久精品日本一区二区免费 | 永久免费观看美女裸体的网站 | 国产又粗又硬又大爽黄老大爷视 | 成熟人妻av无码专区 | 18精品久久久无码午夜福利 | 亚洲色偷偷男人的天堂 | 国语精品一区二区三区 | 99久久亚洲精品无码毛片 | 色综合久久久久综合一本到桃花网 | 欧美放荡的少妇 | 亚洲色www成人永久网址 | 亚洲乱亚洲乱妇50p | 久久精品无码一区二区三区 | 最新国产乱人伦偷精品免费网站 | 日韩 欧美 动漫 国产 制服 | 亚洲s色大片在线观看 | 中文字幕 亚洲精品 第1页 | 狠狠噜狠狠狠狠丁香五月 | 亚洲无人区午夜福利码高清完整版 | 色五月五月丁香亚洲综合网 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 欧洲vodafone精品性 | 国产午夜精品一区二区三区嫩草 | 2019午夜福利不卡片在线 | 亚洲无人区午夜福利码高清完整版 | 国产明星裸体无码xxxx视频 | 激情综合激情五月俺也去 | 亚洲成色在线综合网站 | 人妻夜夜爽天天爽三区 | 少妇太爽了在线观看 | 精品无码一区二区三区的天堂 | 欧美老妇与禽交 | 麻豆国产97在线 | 欧洲 | 中文毛片无遮挡高清免费 | 人人妻人人澡人人爽精品欧美 | 中文字幕日韩精品一区二区三区 | 美女黄网站人色视频免费国产 | 国产一区二区三区影院 | 娇妻被黑人粗大高潮白浆 | 精品国产乱码久久久久乱码 | 亚洲精品一区二区三区在线观看 | 成人女人看片免费视频放人 | 国产色视频一区二区三区 | 狠狠综合久久久久综合网 | 成人精品一区二区三区中文字幕 | 成人精品天堂一区二区三区 | 亚洲一区二区三区国产精华液 | 久久久久久a亚洲欧洲av冫 | 久久99精品国产麻豆蜜芽 | 久久久无码中文字幕久... | 欧美老人巨大xxxx做受 | 日韩av无码中文无码电影 | 色窝窝无码一区二区三区色欲 | 在线播放免费人成毛片乱码 | 精品国产麻豆免费人成网站 | 久久久久成人片免费观看蜜芽 | 国产欧美精品一区二区三区 | 美女扒开屁股让男人桶 | 亚洲熟女一区二区三区 | 欧美亚洲国产一区二区三区 | 牲交欧美兽交欧美 | 国产精品亚洲一区二区三区喷水 | 欧美日韩在线亚洲综合国产人 | 亚洲日本va中文字幕 | 最新国产麻豆aⅴ精品无码 | 久久精品人人做人人综合试看 | 98国产精品综合一区二区三区 | 美女毛片一区二区三区四区 | 成年女人永久免费看片 | www国产亚洲精品久久久日本 | 九九久久精品国产免费看小说 | 97色伦图片97综合影院 | 99视频精品全部免费免费观看 | 人人澡人人透人人爽 | 国产麻豆精品一区二区三区v视界 | 国产精品久久久一区二区三区 | 人人妻人人澡人人爽精品欧美 | 黑人粗大猛烈进出高潮视频 | 国产亚洲精品久久久久久久久动漫 | 俺去俺来也在线www色官网 | 在线精品亚洲一区二区 | 国产精品无码mv在线观看 | av无码电影一区二区三区 | 国产精品亚洲五月天高清 | 久久精品国产亚洲精品 | 天下第一社区视频www日本 | 少妇性l交大片欧洲热妇乱xxx | 国产成人无码区免费内射一片色欲 | 永久免费观看美女裸体的网站 | 在线 国产 欧美 亚洲 天堂 | 日韩少妇白浆无码系列 | 久久天天躁狠狠躁夜夜免费观看 | 国产亚洲精品久久久闺蜜 | 沈阳熟女露脸对白视频 | 国精品人妻无码一区二区三区蜜柚 | 国产明星裸体无码xxxx视频 | 精品久久久无码人妻字幂 | 人人爽人人澡人人高潮 | 99riav国产精品视频 | 少妇性俱乐部纵欲狂欢电影 | 国产乡下妇女做爰 | 人妻少妇精品无码专区动漫 | 玩弄少妇高潮ⅹxxxyw | 99精品久久毛片a片 | 色五月丁香五月综合五月 | 香蕉久久久久久av成人 | 无码毛片视频一区二区本码 | 亚洲欧洲日本综合aⅴ在线 | 1000部夫妻午夜免费 | 亚洲春色在线视频 | 欧美亚洲国产一区二区三区 | 国产精品久久久久久亚洲影视内衣 | 亚洲国产精品无码久久久久高潮 | 国产色xx群视频射精 | 中文字幕色婷婷在线视频 | 国产色在线 | 国产 | 伊人久久大香线蕉午夜 | 成人免费视频一区二区 | 日日摸天天摸爽爽狠狠97 | 亚洲成a人片在线观看无码 | 好男人www社区 | 麻花豆传媒剧国产免费mv在线 | 国产精品国产三级国产专播 | 天干天干啦夜天干天2017 | 国产精品久久久 | 国产三级久久久精品麻豆三级 | 国产成人综合色在线观看网站 | 精品无人区无码乱码毛片国产 | 一个人看的视频www在线 | 亚洲欧美国产精品专区久久 | 午夜男女很黄的视频 | 久久午夜无码鲁丝片 | 波多野42部无码喷潮在线 | 日韩少妇白浆无码系列 | 中文字幕av无码一区二区三区电影 | 少女韩国电视剧在线观看完整 | 久久综合给久久狠狠97色 | 欧美成人免费全部网站 | 麻豆人妻少妇精品无码专区 | 国产精品无码一区二区三区不卡 | 欧美人与动性行为视频 | 骚片av蜜桃精品一区 | 亚洲小说春色综合另类 | 东京热一精品无码av | 日产精品高潮呻吟av久久 | 纯爱无遮挡h肉动漫在线播放 | 动漫av一区二区在线观看 | 日本一卡二卡不卡视频查询 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 国产免费久久久久久无码 | 国产人妻精品一区二区三区不卡 | 久久人人爽人人人人片 | 亚洲娇小与黑人巨大交 | 国产成人午夜福利在线播放 | 天堂在线观看www | 一本一道久久综合久久 | 中文无码伦av中文字幕 | 亚洲 另类 在线 欧美 制服 | 亚洲成在人网站无码天堂 | 国精产品一区二区三区 | 强辱丰满人妻hd中文字幕 | 呦交小u女精品视频 | 内射白嫩少妇超碰 | 性生交大片免费看女人按摩摩 | 亚洲天堂2017无码 | 福利一区二区三区视频在线观看 | 精品国精品国产自在久国产87 | 又大又黄又粗又爽的免费视频 | 蜜桃av抽搐高潮一区二区 | 国精产品一区二区三区 | 成人亚洲精品久久久久软件 | 亚洲精品中文字幕乱码 | 久久国产精品偷任你爽任你 | 日韩人妻系列无码专区 | 午夜精品久久久久久久 | 欧美性生交活xxxxxdddd | 青青草原综合久久大伊人精品 | 久久亚洲a片com人成 | 亚洲人成网站免费播放 | 无套内谢的新婚少妇国语播放 | 久久无码人妻影院 | 久久精品国产一区二区三区 | 国产高清av在线播放 | 亚洲一区二区三区国产精华液 | 免费视频欧美无人区码 | 丁香啪啪综合成人亚洲 | 国产97色在线 | 免 | 熟女体下毛毛黑森林 | 人人妻人人藻人人爽欧美一区 | 久久亚洲中文字幕无码 | 国产一区二区不卡老阿姨 | 日本免费一区二区三区最新 | 国产三级久久久精品麻豆三级 | 色诱久久久久综合网ywww | 日本熟妇大屁股人妻 | 人妻尝试又大又粗久久 | 欧美性黑人极品hd | 蜜桃av抽搐高潮一区二区 | 久久久久se色偷偷亚洲精品av | 自拍偷自拍亚洲精品被多人伦好爽 | 亚拍精品一区二区三区探花 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 欧美性猛交xxxx富婆 | 日韩精品无码一本二本三本色 | 久久综合九色综合欧美狠狠 | 99久久无码一区人妻 | 人妻有码中文字幕在线 | 国产免费无码一区二区视频 | 又色又爽又黄的美女裸体网站 | 亚洲七七久久桃花影院 | 国产精品资源一区二区 | 国产69精品久久久久app下载 | 国产真实乱对白精彩久久 | 无码av岛国片在线播放 | 欧美日韩人成综合在线播放 | 丰满人妻精品国产99aⅴ | 国产亚洲日韩欧美另类第八页 | 131美女爱做视频 | 色五月五月丁香亚洲综合网 | 国产乱人无码伦av在线a | 中文字幕 亚洲精品 第1页 | 人妻少妇被猛烈进入中文字幕 | 日本大乳高潮视频在线观看 | 亚洲中文字幕在线观看 | 欧美第一黄网免费网站 | 久久综合给合久久狠狠狠97色 | 亚洲一区二区三区含羞草 | 四十如虎的丰满熟妇啪啪 | 性做久久久久久久免费看 | 国产亚洲精品久久久久久国模美 | 无码一区二区三区在线 | 99久久人妻精品免费一区 | 国精品人妻无码一区二区三区蜜柚 | 亚洲欧洲无卡二区视頻 | 国产人妻人伦精品1国产丝袜 | 中文字幕人成乱码熟女app | 日韩av无码一区二区三区 | 国产卡一卡二卡三 | 午夜精品一区二区三区在线观看 | 精品欧洲av无码一区二区三区 | 成年美女黄网站色大免费视频 | www成人国产高清内射 | 99久久精品无码一区二区毛片 | 欧美国产日韩亚洲中文 | 国产麻豆精品精东影业av网站 | 亚洲人成影院在线无码按摩店 | 俄罗斯老熟妇色xxxx | 四虎永久在线精品免费网址 | 99久久精品日本一区二区免费 | 亚洲精品久久久久久久久久久 | 熟妇人妻无码xxx视频 | 野外少妇愉情中文字幕 | 国产偷抇久久精品a片69 | 国产口爆吞精在线视频 | 国产美女极度色诱视频www | 久久午夜无码鲁丝片 | 亚洲色偷偷偷综合网 | 四虎影视成人永久免费观看视频 | 在线成人www免费观看视频 | 国产激情无码一区二区app | 国产一区二区三区四区五区加勒比 | 久久久www成人免费毛片 | 天海翼激烈高潮到腰振不止 | 精品国产国产综合精品 | 亚洲精品一区二区三区在线观看 | 波多野结衣av一区二区全免费观看 | 国产精品高潮呻吟av久久 | 久久精品国产精品国产精品污 | 2020久久超碰国产精品最新 | 亚洲国产综合无码一区 | 熟妇人妻中文av无码 | 久久亚洲中文字幕精品一区 | 人妻有码中文字幕在线 | 无码国产色欲xxxxx视频 | 色一情一乱一伦一区二区三欧美 | 亚洲人成网站在线播放942 | 久久精品丝袜高跟鞋 | 亚洲天堂2017无码中文 | 老熟女乱子伦 | 蜜桃视频插满18在线观看 | 亚洲精品综合一区二区三区在线 | 377p欧洲日本亚洲大胆 | 国产午夜精品一区二区三区嫩草 | 亚洲国产精品久久久久久 | 玩弄中年熟妇正在播放 | 内射后入在线观看一区 | 大肉大捧一进一出好爽视频 | 樱花草在线社区www | 国产精品成人av在线观看 | 日本护士xxxxhd少妇 | 国产偷国产偷精品高清尤物 | 日日鲁鲁鲁夜夜爽爽狠狠 | 人妻熟女一区 | 18精品久久久无码午夜福利 | 日日天干夜夜狠狠爱 | 婷婷五月综合缴情在线视频 | 人妻体内射精一区二区三四 | 青青久在线视频免费观看 | 国产精华av午夜在线观看 | 国产人妻精品一区二区三区 | 女人高潮内射99精品 | 在线观看国产午夜福利片 | 88国产精品欧美一区二区三区 | 国内精品人妻无码久久久影院蜜桃 | 欧美人与动性行为视频 | 黑人巨大精品欧美一区二区 | 强奷人妻日本中文字幕 | 丝袜 中出 制服 人妻 美腿 | 丝袜足控一区二区三区 | 亚洲一区二区三区偷拍女厕 | 中文字幕+乱码+中文字幕一区 | 少妇高潮喷潮久久久影院 | 成人毛片一区二区 | 亚洲成熟女人毛毛耸耸多 | 男女猛烈xx00免费视频试看 | 亚洲欧美中文字幕5发布 | 狠狠色噜噜狠狠狠7777奇米 | 99久久久无码国产精品免费 | 国产特级毛片aaaaaa高潮流水 | 在线看片无码永久免费视频 | 国产色xx群视频射精 | а天堂中文在线官网 | 亚洲 日韩 欧美 成人 在线观看 | 色欲综合久久中文字幕网 | 久久伊人色av天堂九九小黄鸭 | 亲嘴扒胸摸屁股激烈网站 | 亚洲码国产精品高潮在线 | 一二三四在线观看免费视频 | 欧美xxxx黑人又粗又长 | 国产精品无码一区二区三区不卡 | 99麻豆久久久国产精品免费 | 久久午夜夜伦鲁鲁片无码免费 | 日韩精品久久久肉伦网站 | 成人无码视频在线观看网站 | 激情内射亚州一区二区三区爱妻 | 狠狠噜狠狠狠狠丁香五月 | 人人妻人人澡人人爽欧美一区九九 | 精品aⅴ一区二区三区 | 无码人妻丰满熟妇区毛片18 | 老子影院午夜伦不卡 | 露脸叫床粗话东北少妇 | 在线播放亚洲第一字幕 | 久久精品人人做人人综合试看 | 人妻天天爽夜夜爽一区二区 | 久久精品国产精品国产精品污 | 国产极品美女高潮无套在线观看 | 荫蒂添的好舒服视频囗交 | 伊在人天堂亚洲香蕉精品区 | 九九热爱视频精品 | 天堂а√在线地址中文在线 | 国内揄拍国内精品少妇国语 | 天堂久久天堂av色综合 | 亚洲精品国偷拍自产在线观看蜜桃 | 九月婷婷人人澡人人添人人爽 | 波多野结衣aⅴ在线 | 欧美阿v高清资源不卡在线播放 | 国内精品久久久久久中文字幕 | а√天堂www在线天堂小说 | 一本久久伊人热热精品中文字幕 | 久久精品99久久香蕉国产色戒 | 18无码粉嫩小泬无套在线观看 | 人妻互换免费中文字幕 | 国产午夜无码视频在线观看 | 鲁大师影院在线观看 | 强辱丰满人妻hd中文字幕 | 兔费看少妇性l交大片免费 | 欧美人与牲动交xxxx | 亚洲精品久久久久avwww潮水 | 麻豆果冻传媒2021精品传媒一区下载 | 国产成人精品无码播放 | 少女韩国电视剧在线观看完整 | 精品国产一区二区三区四区 | 亚洲自偷精品视频自拍 | 亚洲国产一区二区三区在线观看 | 人妻少妇精品无码专区动漫 | 麻豆果冻传媒2021精品传媒一区下载 | 人妻人人添人妻人人爱 | 少妇无套内谢久久久久 | 日韩精品无码一区二区中文字幕 | 内射老妇bbwx0c0ck | 色窝窝无码一区二区三区色欲 | 久久午夜无码鲁丝片秋霞 | 中文字幕人妻无码一区二区三区 | 国产手机在线αⅴ片无码观看 | 国产热a欧美热a在线视频 | 麻豆av传媒蜜桃天美传媒 | 在线播放免费人成毛片乱码 | 国产sm调教视频在线观看 | 一区二区三区乱码在线 | 欧洲 | 国产精品人妻一区二区三区四 | 久久久久人妻一区精品色欧美 | 欧美三级不卡在线观看 | 亚洲精品欧美二区三区中文字幕 | 久久精品女人的天堂av | 亚洲s色大片在线观看 | 无人区乱码一区二区三区 | 毛片内射-百度 | 成人精品视频一区二区 | 国产精品嫩草久久久久 | 精品无码一区二区三区的天堂 | 欧美成人家庭影院 | 久久综合香蕉国产蜜臀av | 亚洲七七久久桃花影院 | 国产人妻精品午夜福利免费 | 无码午夜成人1000部免费视频 | 亚洲爆乳精品无码一区二区三区 | 国产人妻精品午夜福利免费 | 久久综合给合久久狠狠狠97色 | 欧美xxxxx精品 | 久久久精品456亚洲影院 | 香港三级日本三级妇三级 | 国产麻豆精品精东影业av网站 | 好男人www社区 | 日日天干夜夜狠狠爱 | 无套内谢的新婚少妇国语播放 | 亚洲人成影院在线观看 | 国产一区二区不卡老阿姨 | 日本一本二本三区免费 | 亚洲精品一区二区三区大桥未久 | 国产激情综合五月久久 | 大肉大捧一进一出好爽视频 | 又粗又大又硬又长又爽 | www国产亚洲精品久久久日本 | 激情综合激情五月俺也去 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 黑人巨大精品欧美黑寡妇 | 九九综合va免费看 | 少妇人妻偷人精品无码视频 | 国产亚洲精品久久久ai换 | 欧美亚洲国产一区二区三区 | 国产成人无码av在线影院 | 日日噜噜噜噜夜夜爽亚洲精品 | 好爽又高潮了毛片免费下载 | 亚洲精品www久久久 | 波多野结衣乳巨码无在线观看 | 日本一卡2卡3卡四卡精品网站 | 精品无码一区二区三区爱欲 | 波多野结衣av在线观看 | 国产女主播喷水视频在线观看 | 亚洲自偷自偷在线制服 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 成人性做爰aaa片免费看不忠 | 亚洲欧美国产精品专区久久 | 天天摸天天透天天添 | 精品水蜜桃久久久久久久 | 欧美精品国产综合久久 | 亚洲第一无码av无码专区 | 国产精品永久免费视频 | 精品一区二区不卡无码av | 亚洲热妇无码av在线播放 | 亚洲人亚洲人成电影网站色 | 欧美 丝袜 自拍 制服 另类 | 国产精品福利视频导航 | 亚洲日本va中文字幕 | 日日碰狠狠躁久久躁蜜桃 | 蜜桃av抽搐高潮一区二区 | 国产精品久久久午夜夜伦鲁鲁 | 强奷人妻日本中文字幕 | 亚洲午夜福利在线观看 | 久久精品女人天堂av免费观看 | 久久五月精品中文字幕 | 成熟女人特级毛片www免费 | 中文字幕乱码人妻无码久久 | 99精品无人区乱码1区2区3区 | 色偷偷人人澡人人爽人人模 | 领导边摸边吃奶边做爽在线观看 | 久久午夜夜伦鲁鲁片无码免费 | 亚洲综合另类小说色区 | 黑人巨大精品欧美黑寡妇 | 天干天干啦夜天干天2017 | ass日本丰满熟妇pics | 欧美人与善在线com | 国产绳艺sm调教室论坛 | 欧洲精品码一区二区三区免费看 | 成在人线av无码免观看麻豆 | 伦伦影院午夜理论片 | 亚洲区小说区激情区图片区 | 亚洲欧美精品aaaaaa片 | 人人爽人人爽人人片av亚洲 | 啦啦啦www在线观看免费视频 | 国产97在线 | 亚洲 | 日本va欧美va欧美va精品 | 亚洲熟女一区二区三区 | 久久久精品欧美一区二区免费 | 国产性生交xxxxx无码 | 精品久久久久久人妻无码中文字幕 | 久久久精品国产sm最大网站 | 国产精品无码一区二区桃花视频 | 国内老熟妇对白xxxxhd | 国产凸凹视频一区二区 | 99久久久无码国产精品免费 | 欧洲熟妇精品视频 | 国产亚洲人成a在线v网站 | 国内老熟妇对白xxxxhd | 日本一区二区三区免费播放 | 国产精品鲁鲁鲁 | 色综合久久久久综合一本到桃花网 | 伊人久久大香线焦av综合影院 | 天堂亚洲2017在线观看 | 东京无码熟妇人妻av在线网址 | 亚洲综合在线一区二区三区 | 俺去俺来也www色官网 | 麻豆成人精品国产免费 | 亚洲一区二区三区含羞草 | 激情爆乳一区二区三区 | 日日天干夜夜狠狠爱 | 国产午夜亚洲精品不卡下载 | 久久国产精品精品国产色婷婷 | 国产疯狂伦交大片 | 国产69精品久久久久app下载 | 亚洲 欧美 激情 小说 另类 | 成人精品视频一区二区三区尤物 | 狠狠色色综合网站 | 国产激情一区二区三区 | 精品国产青草久久久久福利 | 2020最新国产自产精品 | 久久国产自偷自偷免费一区调 | 丁香花在线影院观看在线播放 | 麻花豆传媒剧国产免费mv在线 | 国产成人一区二区三区在线观看 | 国产精品沙发午睡系列 | 无码人妻av免费一区二区三区 | 成年女人永久免费看片 | 精品欧洲av无码一区二区三区 | 亚洲中文字幕av在天堂 | 无码精品国产va在线观看dvd | 色婷婷欧美在线播放内射 | 亚洲大尺度无码无码专区 | 国产高清不卡无码视频 | 久久午夜夜伦鲁鲁片无码免费 | 亚洲综合久久一区二区 | 久久久久亚洲精品中文字幕 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 日韩亚洲欧美中文高清在线 | 国产av剧情md精品麻豆 | 荫蒂添的好舒服视频囗交 | 精品国产一区二区三区四区在线看 | 99麻豆久久久国产精品免费 | 日本护士毛茸茸高潮 | 久久久精品456亚洲影院 | 日本www一道久久久免费榴莲 | 人妻中文无码久热丝袜 | 岛国片人妻三上悠亚 | 九九综合va免费看 | 欧洲熟妇色 欧美 | 国产 精品 自在自线 | 97久久超碰中文字幕 | 久久国产精品萌白酱免费 | 男女超爽视频免费播放 | 久久国产36精品色熟妇 | 日本高清一区免费中文视频 | 偷窥日本少妇撒尿chinese | 亚洲人亚洲人成电影网站色 | 日本熟妇浓毛 | 精品成人av一区二区三区 | 国产色精品久久人妻 | 国产精品人人爽人人做我的可爱 | 国产成人无码一二三区视频 | 国产在线精品一区二区高清不卡 | 久久久精品国产sm最大网站 | 国产特级毛片aaaaaa高潮流水 | 国产亚洲精品久久久久久国模美 | 全黄性性激高免费视频 | 久久国产精品二国产精品 | 久久无码专区国产精品s | 亚洲精品午夜国产va久久成人 | 中文字幕无码热在线视频 | 国产精品鲁鲁鲁 | 99久久精品国产一区二区蜜芽 | 国产97在线 | 亚洲 | 亚洲午夜久久久影院 | 欧美35页视频在线观看 | 岛国片人妻三上悠亚 | 无码人妻少妇伦在线电影 | 久久久久久久人妻无码中文字幕爆 | 精品无人区无码乱码毛片国产 | 亚洲一区二区三区无码久久 | 亚洲国产精华液网站w | 成人一区二区免费视频 | 欧美freesex黑人又粗又大 | 无码免费一区二区三区 | 久久久精品人妻久久影视 | 日日天干夜夜狠狠爱 | 三上悠亚人妻中文字幕在线 | 7777奇米四色成人眼影 | 久久天天躁夜夜躁狠狠 | 人妻天天爽夜夜爽一区二区 | 日韩欧美成人免费观看 | 国产精品亚洲а∨无码播放麻豆 | 一区二区传媒有限公司 | 对白脏话肉麻粗话av | 女人被男人躁得好爽免费视频 | 国产精华av午夜在线观看 | 图片区 小说区 区 亚洲五月 | 扒开双腿吃奶呻吟做受视频 | 国产精品美女久久久久av爽李琼 | 国产性生大片免费观看性 | 国产麻豆精品一区二区三区v视界 | 中文字幕人妻无码一区二区三区 | 偷窥日本少妇撒尿chinese | 天天爽夜夜爽夜夜爽 | 永久免费观看美女裸体的网站 | 妺妺窝人体色www在线小说 | 蜜桃av抽搐高潮一区二区 | 国产精品高潮呻吟av久久4虎 | 亚洲国产欧美国产综合一区 | 人人爽人人澡人人高潮 | 国产人成高清在线视频99最全资源 | 内射白嫩少妇超碰 | 曰韩少妇内射免费播放 | 十八禁真人啪啪免费网站 | 国产精品理论片在线观看 | 国产特级毛片aaaaaa高潮流水 | 国产亚洲人成a在线v网站 | 亚洲成a人片在线观看无码3d | 亚洲高清偷拍一区二区三区 | 日本丰满熟妇videos | 久久精品中文闷骚内射 | 国产农村乱对白刺激视频 | 国产精品高潮呻吟av久久4虎 | 久久久久99精品国产片 | 久热国产vs视频在线观看 | 久久精品国产大片免费观看 | 国产偷自视频区视频 | 亚洲国产成人a精品不卡在线 | 久久人人爽人人爽人人片ⅴ | 国产激情无码一区二区app | 日本免费一区二区三区最新 | 97久久精品无码一区二区 | av人摸人人人澡人人超碰下载 | 国产黄在线观看免费观看不卡 | 欧美日韩在线亚洲综合国产人 | 亚洲精品欧美二区三区中文字幕 | 国产在线精品一区二区三区直播 | 初尝人妻少妇中文字幕 | 国产av无码专区亚洲awww | 99久久精品国产一区二区蜜芽 | 亚洲欧洲日本无在线码 | 色综合久久中文娱乐网 | 日本一卡2卡3卡四卡精品网站 | 久久精品人人做人人综合试看 | 国产精品久久国产精品99 | 未满成年国产在线观看 | 欧美成人免费全部网站 | 亚洲熟熟妇xxxx | 帮老师解开蕾丝奶罩吸乳网站 | 日日摸天天摸爽爽狠狠97 | 欧美精品无码一区二区三区 | 麻豆国产人妻欲求不满谁演的 | 少妇高潮一区二区三区99 | 熟女俱乐部五十路六十路av | 色婷婷av一区二区三区之红樱桃 | 97精品人妻一区二区三区香蕉 | 中文字幕乱妇无码av在线 | 波多野结衣aⅴ在线 | 中文字幕乱码人妻无码久久 | 国产熟妇高潮叫床视频播放 | 久久伊人色av天堂九九小黄鸭 | 久久亚洲国产成人精品性色 | 亚洲人成无码网www | 免费无码的av片在线观看 | 黑人粗大猛烈进出高潮视频 | 在线看片无码永久免费视频 | 一本色道久久综合亚洲精品不卡 | 欧美熟妇另类久久久久久不卡 | 老子影院午夜伦不卡 | 人妻夜夜爽天天爽三区 | 国产九九九九九九九a片 | 免费国产黄网站在线观看 | 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲色欲色欲欲www在线 | 性色av无码免费一区二区三区 | 亚洲第一网站男人都懂 | 天天燥日日燥 | 国产香蕉97碰碰久久人人 | 亚洲中文字幕无码一久久区 | 日本精品人妻无码77777 天堂一区人妻无码 | 亚洲成av人在线观看网址 | 久久无码专区国产精品s | 久久久久久国产精品无码下载 | 亚洲欧美综合区丁香五月小说 | 久久精品人人做人人综合 | 日日摸日日碰夜夜爽av | 久久久精品国产sm最大网站 | 欧美三级不卡在线观看 | 久久精品丝袜高跟鞋 | 久久国产劲爆∧v内射 | 日韩亚洲欧美精品综合 | 少妇激情av一区二区 | 男女作爱免费网站 | 国产内射老熟女aaaa | 欧美 日韩 亚洲 在线 | www成人国产高清内射 | 丰满妇女强制高潮18xxxx | 天天躁夜夜躁狠狠是什么心态 | 国产乱人偷精品人妻a片 | 亚洲春色在线视频 | 国产一区二区三区日韩精品 | 成人免费视频一区二区 | 久久国产36精品色熟妇 | 四十如虎的丰满熟妇啪啪 | 在线看片无码永久免费视频 | 国产无av码在线观看 | 日韩精品一区二区av在线 | 国产精品久久久久久亚洲影视内衣 | 日日天日日夜日日摸 | 最近的中文字幕在线看视频 | 亚洲一区二区三区国产精华液 | 日本一区二区三区免费高清 | 中文字幕无码乱人伦 | 久久久无码中文字幕久... | 国产suv精品一区二区五 | 国产亚洲人成在线播放 | 久久99精品国产麻豆蜜芽 | 午夜无码人妻av大片色欲 | 欧美日韩一区二区综合 | 久久久久成人片免费观看蜜芽 | 国产成人无码av片在线观看不卡 | 久久精品人妻少妇一区二区三区 | 国语精品一区二区三区 | 免费国产黄网站在线观看 | 日本饥渴人妻欲求不满 | 欧美黑人巨大xxxxx | 性生交大片免费看女人按摩摩 | 啦啦啦www在线观看免费视频 | 精品欧洲av无码一区二区三区 | 亚洲精品一区二区三区四区五区 | 午夜丰满少妇性开放视频 | 任你躁在线精品免费 | 午夜嘿嘿嘿影院 | 亚洲一区二区三区国产精华液 | 无码乱肉视频免费大全合集 | 久久亚洲中文字幕无码 | 无码人妻精品一区二区三区不卡 | 荫蒂被男人添的好舒服爽免费视频 | 成人性做爰aaa片免费看 | a国产一区二区免费入口 | 露脸叫床粗话东北少妇 | 久久久久久九九精品久 | 1000部啪啪未满十八勿入下载 | 国产 浪潮av性色四虎 | 色婷婷综合中文久久一本 | 中文字幕av日韩精品一区二区 | 日本熟妇大屁股人妻 | 欧美 日韩 亚洲 在线 | 亚洲日韩一区二区 | 色婷婷香蕉在线一区二区 | 波多野结衣 黑人 | 国产一区二区三区日韩精品 | 亚洲色偷偷偷综合网 | 又粗又大又硬又长又爽 | 黑人粗大猛烈进出高潮视频 | 无套内谢老熟女 | 精品 日韩 国产 欧美 视频 | 国产精品久久久久无码av色戒 | 日日橹狠狠爱欧美视频 | 亚洲精品中文字幕 | 国产精品怡红院永久免费 | 影音先锋中文字幕无码 | 欧美日本免费一区二区三区 | 色一情一乱一伦一视频免费看 | 无码播放一区二区三区 | 日本成熟视频免费视频 | 久久久精品人妻久久影视 | 午夜精品久久久久久久 | 97人妻精品一区二区三区 | 天天av天天av天天透 | 中国女人内谢69xxxxxa片 | 亚洲娇小与黑人巨大交 | 国产绳艺sm调教室论坛 | 国产成人精品一区二区在线小狼 | 一本久道久久综合狠狠爱 | 亚洲精品一区二区三区四区五区 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 久久无码人妻影院 | 麻豆md0077饥渴少妇 | 国产成人精品一区二区在线小狼 | 日本在线高清不卡免费播放 | √天堂中文官网8在线 | aa片在线观看视频在线播放 | 欧美亚洲国产一区二区三区 | 又粗又大又硬又长又爽 | 国产激情艳情在线看视频 | 免费人成网站视频在线观看 | 亚洲国产精品美女久久久久 | 玩弄中年熟妇正在播放 | 精品国产av色一区二区深夜久久 | 亚洲国产欧美国产综合一区 | 国内综合精品午夜久久资源 | 国产真人无遮挡作爱免费视频 | 女人和拘做爰正片视频 | 国产av人人夜夜澡人人爽麻豆 | 国产亚洲精品久久久ai换 | 内射爽无广熟女亚洲 | 日本一卡2卡3卡四卡精品网站 | 成人无码视频在线观看网站 | 亚洲国产成人a精品不卡在线 | 国产精品办公室沙发 | 十八禁视频网站在线观看 | 亚洲s码欧洲m码国产av | 亚洲人成人无码网www国产 | √8天堂资源地址中文在线 | 欧美大屁股xxxxhd黑色 | 在线精品国产一区二区三区 | 亚洲熟女一区二区三区 | 女高中生第一次破苞av | 国产免费久久久久久无码 | 综合人妻久久一区二区精品 | 色欲av亚洲一区无码少妇 | 香港三级日本三级妇三级 | 一本色道久久综合狠狠躁 | 欧美乱妇无乱码大黄a片 | 国产亚洲美女精品久久久2020 | 内射欧美老妇wbb | 久久99精品国产.久久久久 | 亚洲日韩一区二区三区 | 野狼第一精品社区 | 一本久久a久久精品vr综合 | 男人扒开女人内裤强吻桶进去 | 又色又爽又黄的美女裸体网站 | 人人妻在人人 | 玩弄人妻少妇500系列视频 | 欧美国产日产一区二区 | 一区二区三区高清视频一 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 日本高清一区免费中文视频 | 亚洲精品久久久久久一区二区 | 无码人妻精品一区二区三区不卡 | 国产精品欧美成人 | 欧美兽交xxxx×视频 | 久久99久久99精品中文字幕 | 宝宝好涨水快流出来免费视频 | 熟妇人妻无乱码中文字幕 | 人妻中文无码久热丝袜 | 日韩人妻系列无码专区 | 国产又爽又黄又刺激的视频 | 人人爽人人爽人人片av亚洲 | 欧美 日韩 亚洲 在线 | 国产在线精品一区二区三区直播 | 婷婷丁香六月激情综合啪 | 国产亚洲视频中文字幕97精品 | 日本爽爽爽爽爽爽在线观看免 | 欧美国产日韩亚洲中文 | 国产综合在线观看 | 特级做a爰片毛片免费69 | 色偷偷人人澡人人爽人人模 | 夜夜影院未满十八勿进 | 日韩人妻无码一区二区三区久久99 | 图片区 小说区 区 亚洲五月 | 久久久久亚洲精品中文字幕 | 国产肉丝袜在线观看 | 日韩av无码一区二区三区不卡 | 久久久久久久人妻无码中文字幕爆 | 国产色视频一区二区三区 | 亚洲色大成网站www国产 | 国产成人无码av在线影院 | 丰满人妻被黑人猛烈进入 | 大屁股大乳丰满人妻 | 亚洲熟妇色xxxxx亚洲 | 欧美肥老太牲交大战 | 天天躁日日躁狠狠躁免费麻豆 | 人妻无码αv中文字幕久久琪琪布 | 亚洲一区二区三区偷拍女厕 | 中文字幕无线码免费人妻 | 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲 日韩 欧美 成人 在线观看 | 玩弄人妻少妇500系列视频 | 国产乱子伦视频在线播放 | 色欲人妻aaaaaaa无码 | 亚洲中文字幕av在天堂 | 学生妹亚洲一区二区 | 亚洲区小说区激情区图片区 | 精品国产一区二区三区四区 | 国产成人精品一区二区在线小狼 | 成熟妇人a片免费看网站 | 亚洲一区二区三区偷拍女厕 | 少妇无套内谢久久久久 | 久久99久久99精品中文字幕 | 国产精品视频免费播放 | 大肉大捧一进一出好爽视频 | 欧美老妇交乱视频在线观看 | 波多野结衣乳巨码无在线观看 | 午夜精品一区二区三区在线观看 | 国产xxx69麻豆国语对白 | 亚洲国产精品成人久久蜜臀 | 精品无码国产一区二区三区av | 国产又粗又硬又大爽黄老大爷视 | 欧美 丝袜 自拍 制服 另类 | 福利一区二区三区视频在线观看 | 老熟妇仑乱视频一区二区 | 麻豆国产丝袜白领秘书在线观看 | 中文字幕+乱码+中文字幕一区 | 草草网站影院白丝内射 | 真人与拘做受免费视频 | 亚洲七七久久桃花影院 | 国产精品手机免费 | 国产人妻人伦精品1国产丝袜 | 久久天天躁夜夜躁狠狠 | 亚洲成色在线综合网站 | 一个人看的www免费视频在线观看 | 玩弄中年熟妇正在播放 | 日本大香伊一区二区三区 | 领导边摸边吃奶边做爽在线观看 | 久久久婷婷五月亚洲97号色 | 波多野结衣aⅴ在线 | 人人澡人人透人人爽 | 麻豆精产国品 | 日韩亚洲欧美精品综合 | 亚洲国产高清在线观看视频 | 精品厕所偷拍各类美女tp嘘嘘 | 男女下面进入的视频免费午夜 | 熟女俱乐部五十路六十路av | 老熟妇乱子伦牲交视频 | 久久久久免费精品国产 | 国产精品国产三级国产专播 | 国产精品视频免费播放 | 国产特级毛片aaaaaa高潮流水 | 国产午夜手机精彩视频 | 成熟人妻av无码专区 | 色婷婷综合激情综在线播放 | 亚洲第一无码av无码专区 | 久久国产精品偷任你爽任你 | 天天拍夜夜添久久精品大 | 一本久道高清无码视频 | 日本大香伊一区二区三区 | 色综合久久久久综合一本到桃花网 | 澳门永久av免费网站 | 亚洲阿v天堂在线 | 奇米影视7777久久精品 | 色综合久久久无码中文字幕 | 免费人成网站视频在线观看 | 动漫av网站免费观看 | 欧洲精品码一区二区三区免费看 | 久久久成人毛片无码 | 六月丁香婷婷色狠狠久久 | 亚洲午夜久久久影院 | 任你躁国产自任一区二区三区 | 乱人伦人妻中文字幕无码久久网 | 少妇邻居内射在线 | 国产精品亚洲专区无码不卡 | 特大黑人娇小亚洲女 | 在线观看免费人成视频 | www国产亚洲精品久久网站 | 亚洲精品无码国产 | 国产亚洲美女精品久久久2020 | 国产精品国产自线拍免费软件 | 久久精品人人做人人综合 | 日本精品人妻无码免费大全 | 色欲av亚洲一区无码少妇 | 国产莉萝无码av在线播放 | 又黄又爽又色的视频 | 日本一区二区更新不卡 | 两性色午夜视频免费播放 | 噜噜噜亚洲色成人网站 | 国产网红无码精品视频 | 久久久久人妻一区精品色欧美 | 久久久久久亚洲精品a片成人 | 日本护士毛茸茸高潮 | 精品国产成人一区二区三区 | 国产午夜视频在线观看 | 丰满少妇熟乱xxxxx视频 | 久久精品99久久香蕉国产色戒 | 亚洲高清偷拍一区二区三区 | 无码人妻精品一区二区三区下载 | 88国产精品欧美一区二区三区 | 四虎国产精品免费久久 | 免费无码av一区二区 | 麻豆蜜桃av蜜臀av色欲av | 天天综合网天天综合色 | 久久久久久a亚洲欧洲av冫 | 国产成人无码av在线影院 | 亚洲爆乳大丰满无码专区 | 99er热精品视频 | 国产婷婷色一区二区三区在线 | 噜噜噜亚洲色成人网站 | 亚洲精品一区二区三区在线 | 男人和女人高潮免费网站 | 无码一区二区三区在线观看 | 欧美亚洲国产一区二区三区 | 波多野结衣 黑人 | 国产精品美女久久久 | 自拍偷自拍亚洲精品被多人伦好爽 | 日本一区二区三区免费高清 | 欧美色就是色 | 亚洲精品成a人在线观看 | 午夜精品一区二区三区在线观看 | 无码av中文字幕免费放 | 熟妇女人妻丰满少妇中文字幕 | 精品国产麻豆免费人成网站 | 综合激情五月综合激情五月激情1 | 牲欲强的熟妇农村老妇女视频 | 日本饥渴人妻欲求不满 | 欧美丰满熟妇xxxx | 熟妇人妻无乱码中文字幕 | 欧美野外疯狂做受xxxx高潮 | 成人欧美一区二区三区黑人 | 国产一精品一av一免费 | 日本肉体xxxx裸交 | 亚洲国产午夜精品理论片 | 欧美精品在线观看 | 好屌草这里只有精品 | 色老头在线一区二区三区 | 精品人人妻人人澡人人爽人人 | 国产无套内射久久久国产 | 狠狠色噜噜狠狠狠狠7777米奇 | 天天做天天爱天天爽综合网 | 午夜丰满少妇性开放视频 | 亚洲乱码国产乱码精品精 | 乱人伦中文视频在线观看 | 98国产精品综合一区二区三区 | 熟妇人妻无乱码中文字幕 | 成人精品天堂一区二区三区 | 少妇激情av一区二区 | 亚洲中文字幕无码一久久区 | 又大又紧又粉嫩18p少妇 | 国产精品高潮呻吟av久久4虎 | 特黄特色大片免费播放器图片 | 老子影院午夜伦不卡 | 国产成人综合色在线观看网站 | 亚洲熟妇自偷自拍另类 | 亚洲国产精品美女久久久久 | 97久久国产亚洲精品超碰热 | 精品偷自拍另类在线观看 | 永久免费观看国产裸体美女 | 最新国产乱人伦偷精品免费网站 | 东京热一精品无码av | 在线观看国产午夜福利片 | 亚洲成a人片在线观看无码3d | 又紧又大又爽精品一区二区 | 亚洲精品久久久久久久久久久 | 欧美肥老太牲交大战 | 亚洲 a v无 码免 费 成 人 a v | 日本精品高清一区二区 | 超碰97人人射妻 | a国产一区二区免费入口 | 奇米影视888欧美在线观看 | 激情内射亚州一区二区三区爱妻 | 亚洲爆乳无码专区 | 九九久久精品国产免费看小说 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产精品对白交换视频 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 亚洲爆乳无码专区 | 国产成人综合在线女婷五月99播放 | 捆绑白丝粉色jk震动捧喷白浆 | 国产在线精品一区二区高清不卡 | 377p欧洲日本亚洲大胆 | 中文无码成人免费视频在线观看 | 国产精品对白交换视频 | 久久国内精品自在自线 | 亚洲成a人片在线观看日本 | 亚洲人亚洲人成电影网站色 | 亚洲天堂2017无码中文 | 中文精品久久久久人妻不卡 | 精品无码成人片一区二区98 | 一本久道高清无码视频 | 免费乱码人妻系列无码专区 | 福利一区二区三区视频在线观看 | 成人性做爰aaa片免费看 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 久久精品女人天堂av免费观看 | 欧美xxxxx精品 | 婷婷六月久久综合丁香 | 亚洲精品美女久久久久久久 | 亚洲一区二区三区在线观看网站 | 中文字幕精品av一区二区五区 | 亚洲综合久久一区二区 | www成人国产高清内射 | 成人亚洲精品久久久久 | 欧美日本日韩 | 高潮毛片无遮挡高清免费视频 | 国产成人一区二区三区在线观看 | 亚洲精品国产品国语在线观看 | 欧美刺激性大交 | 小鲜肉自慰网站xnxx | 毛片内射-百度 | 中文字幕乱码中文乱码51精品 | 久精品国产欧美亚洲色aⅴ大片 | 久久精品人人做人人综合试看 | 欧美成人高清在线播放 | 少妇人妻大乳在线视频 | 久久亚洲中文字幕精品一区 | 亚洲精品欧美二区三区中文字幕 | 18无码粉嫩小泬无套在线观看 | 高潮毛片无遮挡高清免费视频 | 亚洲自偷自偷在线制服 | 国内精品久久毛片一区二区 | 国产精品igao视频网 | 扒开双腿疯狂进出爽爽爽视频 | 婷婷综合久久中文字幕蜜桃三电影 | 在线看片无码永久免费视频 | 精品无码国产自产拍在线观看蜜 | 国产手机在线αⅴ片无码观看 | 国产精品自产拍在线观看 | 在线观看国产一区二区三区 | 377p欧洲日本亚洲大胆 | 丰满少妇人妻久久久久久 | 在线观看免费人成视频 | 荡女精品导航 | 中文字幕无线码免费人妻 | 免费国产黄网站在线观看 | 久久伊人色av天堂九九小黄鸭 | 国产日产欧产精品精品app | 日韩av无码中文无码电影 | 男人扒开女人内裤强吻桶进去 | 乱人伦中文视频在线观看 | 乌克兰少妇xxxx做受 | 日本一区二区三区免费高清 | 麻豆国产丝袜白领秘书在线观看 | 亚洲一区二区三区播放 | 亚洲七七久久桃花影院 | 无码福利日韩神码福利片 | aⅴ在线视频男人的天堂 | 永久免费观看国产裸体美女 | 久久久精品人妻久久影视 | 无码免费一区二区三区 | 一二三四在线观看免费视频 | 国产在热线精品视频 | 亚洲日韩av一区二区三区四区 | 扒开双腿疯狂进出爽爽爽视频 | 九九久久精品国产免费看小说 | 日韩亚洲欧美中文高清在线 | 未满小14洗澡无码视频网站 | 国产午夜精品一区二区三区嫩草 | 亚洲欧美国产精品久久 | 成 人 免费观看网站 | 国产精品资源一区二区 | 欧美日韩精品 | 曰韩无码二三区中文字幕 | 大地资源网第二页免费观看 | 丝袜人妻一区二区三区 | 欧美老熟妇乱xxxxx | 天海翼激烈高潮到腰振不止 | 久久久www成人免费毛片 | 中文字幕无码视频专区 | 亚洲色欲久久久综合网东京热 | 亚洲欧美精品aaaaaa片 | 国产免费观看黄av片 | 精品人妻人人做人人爽夜夜爽 | 亚洲国产av精品一区二区蜜芽 | 欧美日韩视频无码一区二区三 | 国产又爽又黄又刺激的视频 | a在线观看免费网站大全 | 国产麻豆精品一区二区三区v视界 | 乱人伦人妻中文字幕无码久久网 | 人妻少妇被猛烈进入中文字幕 | 任你躁国产自任一区二区三区 | 国产乱人伦偷精品视频 | 亚洲欧洲日本综合aⅴ在线 | 欧美精品一区二区精品久久 | 国产精品久久久久9999小说 | 日本xxxx色视频在线观看免费 | 少妇人妻偷人精品无码视频 | 中文亚洲成a人片在线观看 | 77777熟女视频在线观看 а天堂中文在线官网 | 在线观看国产一区二区三区 | 国产婷婷色一区二区三区在线 | 熟妇女人妻丰满少妇中文字幕 | 欧美精品免费观看二区 | 久久综合给合久久狠狠狠97色 | 久久亚洲精品成人无码 | 红桃av一区二区三区在线无码av | 麻豆国产人妻欲求不满谁演的 | 久久精品国产99久久6动漫 | 精品国产青草久久久久福利 | 国产在线一区二区三区四区五区 | 精品无人国产偷自产在线 | 少妇性l交大片欧洲热妇乱xxx | 亚洲男女内射在线播放 | 人妻少妇精品久久 | 无码国产激情在线观看 | 美女毛片一区二区三区四区 | 无码人妻黑人中文字幕 | 给我免费的视频在线观看 | 久久婷婷五月综合色国产香蕉 | 性欧美疯狂xxxxbbbb | 97色伦图片97综合影院 | 男人和女人高潮免费网站 | 欧美丰满熟妇xxxx | 无码成人精品区在线观看 | 久久久中文久久久无码 | 国产色xx群视频射精 | 中文字幕av无码一区二区三区电影 | 精品国产青草久久久久福利 | 国产性生交xxxxx无码 | 丰满诱人的人妻3 | 中文字幕人妻无码一区二区三区 | 国产手机在线αⅴ片无码观看 | 97资源共享在线视频 | 日本精品久久久久中文字幕 | 领导边摸边吃奶边做爽在线观看 | 天天综合网天天综合色 | 亚洲精品国偷拍自产在线观看蜜桃 | 55夜色66夜色国产精品视频 | 国产sm调教视频在线观看 | 色综合久久久无码中文字幕 | 国产莉萝无码av在线播放 | 少妇厨房愉情理9仑片视频 | 中文字幕无码日韩欧毛 | 亚洲小说春色综合另类 | 四虎影视成人永久免费观看视频 | 亚洲综合伊人久久大杳蕉 | 水蜜桃av无码 | 精品国产福利一区二区 | 久久婷婷五月综合色国产香蕉 | 激情综合激情五月俺也去 | 久久亚洲a片com人成 | 日日天干夜夜狠狠爱 | 午夜时刻免费入口 | 国内老熟妇对白xxxxhd | 国产精品久久久久影院嫩草 | 中文字幕无码免费久久99 | 欧美性猛交内射兽交老熟妇 | 成人精品一区二区三区中文字幕 | 国产激情综合五月久久 | 夜夜躁日日躁狠狠久久av | 日日碰狠狠躁久久躁蜜桃 | 久久伊人色av天堂九九小黄鸭 | 久久亚洲精品中文字幕无男同 | 欧美性黑人极品hd | 宝宝好涨水快流出来免费视频 | 牲交欧美兽交欧美 | 日韩 欧美 动漫 国产 制服 | 人人妻人人澡人人爽精品欧美 | 免费看男女做好爽好硬视频 | 亚洲欧美综合区丁香五月小说 | 亚洲综合无码一区二区三区 | 亚洲日韩av片在线观看 | 国模大胆一区二区三区 | 亚洲熟妇色xxxxx欧美老妇 | 女人高潮内射99精品 | 清纯唯美经典一区二区 | 黑人大群体交免费视频 | 亚洲色在线无码国产精品不卡 | 国产婷婷色一区二区三区在线 | 丰满岳乱妇在线观看中字无码 | 精品日本一区二区三区在线观看 | 久久精品人人做人人综合 | 亚洲一区二区三区在线观看网站 | 色诱久久久久综合网ywww | 无码av岛国片在线播放 | 奇米影视888欧美在线观看 | 亚洲 高清 成人 动漫 | 中文字幕无码av波多野吉衣 | 国产精品美女久久久久av爽李琼 | 无码免费一区二区三区 | 少妇激情av一区二区 | 久久久国产精品无码免费专区 | 国产精品美女久久久 | 男女性色大片免费网站 | 无码人妻精品一区二区三区下载 | 综合激情五月综合激情五月激情1 | 未满成年国产在线观看 | 伊人久久大香线焦av综合影院 | 国产suv精品一区二区五 | 亚洲欧美国产精品专区久久 | 97色伦图片97综合影院 | 久精品国产欧美亚洲色aⅴ大片 | 无码国产色欲xxxxx视频 | 爱做久久久久久 | 激情人妻另类人妻伦 | 1000部夫妻午夜免费 | 三级4级全黄60分钟 | 国模大胆一区二区三区 | 色婷婷综合中文久久一本 | 特级做a爰片毛片免费69 | 天天做天天爱天天爽综合网 | 久久久精品人妻久久影视 | 国产亚洲美女精品久久久2020 | 国产 浪潮av性色四虎 | 午夜精品久久久久久久 | 国产人妖乱国产精品人妖 | 久久国内精品自在自线 | 亚洲高清偷拍一区二区三区 | 欧美熟妇另类久久久久久多毛 | 亚洲精品国产品国语在线观看 | 午夜福利试看120秒体验区 | 野外少妇愉情中文字幕 | 精品日本一区二区三区在线观看 | 婷婷五月综合激情中文字幕 | 国产精品办公室沙发 | 99久久人妻精品免费二区 | 日本大乳高潮视频在线观看 | 亚洲精品综合五月久久小说 | 波多野42部无码喷潮在线 | 精品厕所偷拍各类美女tp嘘嘘 | 久在线观看福利视频 | 强开小婷嫩苞又嫩又紧视频 | 4hu四虎永久在线观看 | 日韩亚洲欧美中文高清在线 | 无码精品人妻一区二区三区av | 无码精品国产va在线观看dvd | 无码一区二区三区在线观看 | 乱人伦人妻中文字幕无码 | 亚洲中文字幕无码一久久区 | 国产精品丝袜黑色高跟鞋 | 欧美日韩久久久精品a片 | 国产精品a成v人在线播放 | 无码人妻少妇伦在线电影 | 女高中生第一次破苞av | 国产精品毛片一区二区 | 一本久久伊人热热精品中文字幕 | 亚洲精品国偷拍自产在线麻豆 | 亚洲七七久久桃花影院 | 精品一二三区久久aaa片 | 高潮毛片无遮挡高清免费 | 乱中年女人伦av三区 | 亚洲综合色区中文字幕 | 国产成人综合在线女婷五月99播放 | 无码成人精品区在线观看 | 精品久久久中文字幕人妻 | 99久久精品无码一区二区毛片 | 人妻体内射精一区二区三四 | 午夜无码人妻av大片色欲 | 日本一区二区更新不卡 | 一本久久伊人热热精品中文字幕 | 大地资源网第二页免费观看 | 伊人久久大香线焦av综合影院 | 婷婷五月综合缴情在线视频 | 国产精品爱久久久久久久 | 久久久久免费精品国产 | 男人的天堂2018无码 | 狠狠色噜噜狠狠狠狠7777米奇 | 天堂а√在线地址中文在线 | 福利一区二区三区视频在线观看 | 中文字幕无码乱人伦 | 国产一区二区三区四区五区加勒比 | 亚洲va欧美va天堂v国产综合 | 少妇高潮喷潮久久久影院 | 撕开奶罩揉吮奶头视频 | 欧美 日韩 人妻 高清 中文 | 久久综合色之久久综合 | 日韩人妻系列无码专区 | 少妇性l交大片欧洲热妇乱xxx | 俺去俺来也www色官网 | 人妻与老人中文字幕 | 亚洲成av人综合在线观看 | 日本一区二区三区免费播放 | 自拍偷自拍亚洲精品10p | 天堂亚洲免费视频 | 人妻互换免费中文字幕 | 性欧美牲交xxxxx视频 | 无码任你躁久久久久久久 | 午夜精品久久久内射近拍高清 | v一区无码内射国产 | 国产电影无码午夜在线播放 | 领导边摸边吃奶边做爽在线观看 | 爆乳一区二区三区无码 | 国产无套粉嫩白浆在线 | 亚洲国产精品一区二区第一页 | 久久精品人妻少妇一区二区三区 | 国产疯狂伦交大片 | 亚洲精品国产第一综合99久久 | 亚洲欧美日韩国产精品一区二区 | 无码人妻丰满熟妇区毛片18 | 女人被男人躁得好爽免费视频 | 女人被男人躁得好爽免费视频 | 精品久久久久久亚洲精品 | 风流少妇按摩来高潮 | 色综合久久88色综合天天 | 亚洲啪av永久无码精品放毛片 | 国产免费久久久久久无码 | 97人妻精品一区二区三区 | 精品久久久无码中文字幕 | 国产成人综合色在线观看网站 | 99久久久无码国产精品免费 | 欧美熟妇另类久久久久久不卡 | 亚洲毛片av日韩av无码 | 日韩av激情在线观看 | 久久无码人妻影院 | 一本色道久久综合亚洲精品不卡 | 欧美成人家庭影院 | 18禁黄网站男男禁片免费观看 | 日本一区二区更新不卡 | 乱人伦人妻中文字幕无码久久网 | 日韩少妇白浆无码系列 | 成人影院yy111111在线观看 | 300部国产真实乱 | 99久久久无码国产aaa精品 | 国产精品久久久久9999小说 | 国产综合色产在线精品 | 人人妻人人澡人人爽欧美一区九九 | 荡女精品导航 | 激情人妻另类人妻伦 | 久久久久久久人妻无码中文字幕爆 | 久久综合激激的五月天 | 白嫩日本少妇做爰 | 中国女人内谢69xxxxxa片 | 成人三级无码视频在线观看 | 日本熟妇大屁股人妻 | 国产一区二区三区四区五区加勒比 | 亚洲欧美精品aaaaaa片 | 美女毛片一区二区三区四区 | 亚洲日韩av一区二区三区四区 | 国产成人精品必看 | 欧美肥老太牲交大战 | 女人被男人爽到呻吟的视频 | 精品久久综合1区2区3区激情 | 人妻夜夜爽天天爽三区 | 午夜无码人妻av大片色欲 | 色一情一乱一伦一视频免费看 | 免费国产黄网站在线观看 | 精品久久久久久人妻无码中文字幕 | 亚洲精品国产精品乱码不卡 | 丰满人妻精品国产99aⅴ | 中文字幕人成乱码熟女app | 亚洲综合无码久久精品综合 | 国产日产欧产精品精品app | 一本无码人妻在中文字幕免费 | 久久综合香蕉国产蜜臀av | 狠狠色丁香久久婷婷综合五月 | 国产精品内射视频免费 | 午夜福利一区二区三区在线观看 | 久久综合香蕉国产蜜臀av | 午夜福利不卡在线视频 | 亚洲成a人一区二区三区 | 亚洲一区二区三区在线观看网站 | 亚洲乱码中文字幕在线 | 人妻少妇精品视频专区 | 日本www一道久久久免费榴莲 | 亚洲男人av香蕉爽爽爽爽 | 久久久久av无码免费网 | 亚洲精品一区三区三区在线观看 | 小鲜肉自慰网站xnxx | 在线а√天堂中文官网 | 伊人久久大香线蕉亚洲 | 国产精品美女久久久 | 欧美喷潮久久久xxxxx | 日韩精品a片一区二区三区妖精 | 极品尤物被啪到呻吟喷水 |