<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    2010年12月1日

    10g的數據庫導成9i的

    ORACLE EXP-00003: 未找到段 (4,131) 的存儲定義
    用oracle9i的客戶端連接10g的數據庫,然后執行以下腳本。
     

    在導出前, 連接到SYS用戶, 運行以下SQL: 
    CREATE OR REPLACE VIEW exu9tne ( 
    tsno, fileno, blockno, length) AS 
    SELECT ts#, segfile#, segblock#, length 
    FROM sys.uet$ 
    WHERE ext# = 1 
    UNION ALL 
    SELECT * FROM SYS.EXU9TNEB 
    導出完成后,再復原這個view(定義可以通過user_views看到) 對于oracle9i和oracle10g這個定義都相同: 
    CREATE OR REPLACE VIEW exu9tne ( 
    tsno, fileno, blockno, length) AS 
    SELECT ts#, segfile#, segblock#, length 
    FROM sys.uet$ 
    WHERE ext# = 1 
    posted @ 2010-12-01 16:30 Bom Wu 閱讀(476) | 評論 (0)編輯 收藏

    2010年10月14日

    存:
    ps.setCharacterStream(4new StringReader("String""String".length());
    ?。?br />
    rs.getString("clob");

    jdk 1.6以后
    可以使用
    Clob clob=connetion.createClob();
    Writer wr
    =clob.setCharacterStream(0);
    //對wr寫入信息
    ps.setClob(clob);
    posted @ 2010-10-14 16:09 Bom Wu 閱讀(326) | 評論 (0)編輯 收藏

    2009年9月17日

    inux操作系統定時任務系統 Cron 入門


      cron是一個linux下 的定時執行工具 ,可以在無需人工干預的情況下運行作業。由于Cron 是Linux 的內置 服務,但它不自動起來,可以用以下的方法 啟動、關閉 這個服務:

      /sbin/service crond start //啟動服務

      /sbin/service crond stop //關閉服務

      /sbin/service crond restart //重啟服務

      /sbin/service crond reload //重新載入配置

      你也可以將這個服務在系統啟動的時候自動啟動:

      在/etc /rc.d/rc.local 這個腳本的末尾加上:

      /sbin/service crond start

      現在C ron這個服務已經在進程里面了,我們就可以用這個服務了,Cron服務提供以下幾種接口供大家使用:

      1.直接用crontab 命令編輯

      cron服務提供crontab命令來設定cron服務的,以下是這個命令的一些參數 與說明:

      crontab -u //設定某個用戶的cron服務,一般root 用戶在執行 這個命令的時候需要此參數

      crontab -l //列出某個用戶cron服務的詳細內容

      crontab -r //刪除 沒個用戶的cron服務

      crontab -e //編輯某個用戶的cron服務

      比如說root查看自己的cron設置:crontab -u root -l

      再例如,root想刪除fred的cron設置:crontab -u fred -r

      在編輯cron服務時,編輯的內容有一些格式和約定,輸入:crontab -u root -e

      進入vi 編輯模式 ,編輯的內容一定要符合下面的格式:*/1 * * * * ls >> /tmp/ls.tx t

    任務調度的crond常駐命令
    crond 是linux用來定期執行程序的命令。當安裝完成操作系統之后,默認便會啟動此任務調度命令。crond命令每分鍾會定期檢查是否有要執行的工作,如果有要執行的工作便會自動執行該工作。

    1、linux任務調度的工作主要分為以下兩類:
        *系統執行的工作:系統周期性所要執行的工作,如備份系統數據、清理緩存
        *個人執行的工作:某個用戶定期要做的工作,例如每隔10分鐘檢查郵件服務器是否有新信,這些工作可由每個用戶自行設置。

    2.crontab命令選項:
        -u指定一個用戶,
        -l列出某個用戶的任務計劃,
        -r刪除某個用戶的任務,
        -e編輯某個用戶的任務

    3.cron文件語法:
              分    小時   日      月      星期     命令
            0-59  0-23  1-31  1-12    0-6    command    (取值范圍,0表示周日一般一行對應一個任務)

    4.記住幾個特殊符號的含義:
            "*"代表取值范圍內的數字,
            "/"代表"每",
            "-"代表從某個數字到某個數字,
            ","分開幾個離散的數字


    一、任務調度設置文件的寫法

          可用crontab -e命令來編輯,編輯的是/var/spool/cron下對應用戶的cron文件,也可以直接修改/etc/crontab文件
    具體格式如下:
          Minute Hour Day Month Dayofweek   command
          分鐘    小時  天    月       天每星期       命令

    每個字段代表的含義如下:
          Minute            每個小時的第幾分鐘執行該任務
         Hour               每天的第幾個小時執行該任務
         Day                每月的第幾天執行該任務
         Month             每年的第幾個月執行該任務
         DayOfWeek    每周的第幾天執行該任務
         Command       指定要執行的程序
          在這些字段里,除了“Command”是每次都必須指定的字段以外,其它字段皆為可選字段,可視需要決定。對于不指定的字段,要用“*”來填補其位置。

    舉例如下:
    5      *       *          *     *    ls             指定每小時的第5分鐘執行一次ls命令
    30    5      *          *     *    ls             指定每天的 5:30 執行ls命令
    30    7      8         *     *     ls             指定每月8號的7:30分執行ls命令
    30    5      8         6    *     ls             指定每年的6月8日5:30執行ls命令
    30    6      *          *    0     ls             指定每星期日的6:30執行ls命令 [ 注:0表示星期天,1表示星期1,以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。 ]
    30    3     10,20    *    *     ls    每月10號及20號的3:30執行ls命令 [注:“,”用來連接多個不連續的時段 ]
    25    8-11 *           *    *     ls      每天8-11點的第25分鐘執行ls命令 [注:“-”用來連接連續的時段 ]
    */15  *       *           *    *     ls          每15分鐘執行一次ls命令 [即每個小時的第0 15 30 45 60分鐘執行ls命令  ]
    30   6     */10        *     *     ls       每個月中,每隔10天6:30執行一次ls命令[即每月的1、11、21、31日是的6:30執行一次ls命令。  ]
    每天7:50以root 身份執行/etc/cron.daily目錄中的所有可執行文件
    50   7      *            *     *    root     run-parts     /etc/cron.daily   [ 注:run-parts參數表示,執行后面目錄中的所有可執行文件。  ]

    二、新增調度任務

    新增調度任務可用兩種方法:
            1、在命令行輸入: crontab -e 然后添加相應的任務,wq存盤退出。
            2、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應的任務。

    三、查看調度任務

            crontab -l //列出當前的所有調度任務
            crontab -l -u jp   //列出用戶jp的所有調度任務

    四、刪除任務調度工作

            crontab -r  //刪除所有任務調度工作

    五、任務調度執行結果的轉向

         例1:每天5:30執行ls命令,并把結果輸出到/jp/test文件中
            30 5 * * * ls >/jp/test 2>&1
         注:2>&1 表示執行結果及錯誤信息。


    編輯/etc/crontab 文件配置cron

      cron服務每分鐘不僅要讀一次/var/spool/cron內的所有文件,還需要讀一次/etc/crontab,因此我們配置這個文件也能運用cron服務做一些事情。用crontab配置是針對某個用戶的,而編輯/etc/crontab是針對系統的任務。此文件的文件格式是:

      SHELL=/bin/bash 

      PATH=/sbin:/bin:/usr/sbin:/usr/bin 

      MAILTO=root //如果出現錯誤,或者有數據輸出,數據作為郵件發給這個帳號 

      HOME=/ //使用者運行的路徑,這里是根目錄 

      # run-parts 

      01   *   *   *   *     root run-parts /etc/cron.hourly          //每小時執行/etc/cron.hourly內的腳本 

      02   4   *   *   *     root run-parts /etc/cron.daily            //每天執行/etc/cron.daily內的腳本 

      22   4   *   *   0     root run-parts /etc/cron.weekly        //每星期執行/etc/cron.weekly內的腳本 

      42   4   1   *   *     root run-parts /etc/cron.monthly      //每月去執行/etc/cron.monthly內的腳本 

      大家注意"run-parts"這個參數了,如果去掉這個參數的話,后面就可以寫要運行的某個腳本名,而不是文件夾名了

    例如:        1、在命令行輸入: crontab -e 然后添加相應的任務,wq存盤退出。
            2、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應的任務

    11 2 21 10 * rm -rf /mnt/fb

    posted @ 2009-09-17 11:28 Bom Wu 閱讀(242) | 評論 (0)編輯 收藏

    2009年6月13日

     1
     2import java.util.Date;
     3import java.util.Properties;
     4
     5import javax.mail.Authenticator;
     6import javax.mail.Message;
     7import javax.mail.MessagingException;
     8import javax.mail.PasswordAuthentication;
     9import javax.mail.Session;
    10import javax.mail.Transport;
    11import javax.mail.internet.AddressException;
    12import javax.mail.internet.InternetAddress;
    13import javax.mail.internet.MimeMessage;
    14
    15public class EmailUtils {
    16
    17    private static Properties props;
    18
    19    private static Session session;
    20
    21    // 初始化session
    22    static {
    23        props = System.getProperties();
    24        props.put("mail.transport.protocol""stmp");// 設置郵件服務器的協議
    25        props.put("mail.host""smtp.qq.com");// 設置郵件發送服務器地址,該地址由郵件服務供應商提供,這里以QQ郵箱為例
    26        props.put("mail.smtp.auth""true");// 設置郵件發送服務器需要用戶驗證,即需要賬號密碼才能登錄郵箱
    27        session = Session.getInstance(props, new Authenticator() {// 通過配置獲取一個會話,第二個參數為驗證類
    28                    @Override
    29                    protected PasswordAuthentication getPasswordAuthentication() {
    30                        return new PasswordAuthentication("your email acount",
    31                                "your email password"); // 在這里指定登錄郵件發送服務器的賬號與密碼
    32                        // QQ郵箱的賬號默認為 QQ號@qq.com 密碼為QQ密碼
    33                    }

    34                }
    );
    35        // session.setDebug(true); //設置是否為Debug模式,如果為Debug模式,將輸出中間信息。
    36    }

    37
    38    /**
    39     * 發送郵件
    40     * 
    41     * @param emailTo
    42     *            收件人信箱
    43     * @param title
    44     *            主題
    45     * @param msgs
    46     *            內容
    47     */

    48    public static void sendEmail(String emailTo, String title, String msgs) {
    49        System.out.println(msgs);
    50        Message msg = new MimeMessage(session); // 該類封裝了郵件發送的內容
    51        try {
    52            // 設置發件人地址,可以是個假的!
    53            msg.setFrom(new InternetAddress("bom1987120@qq.com"));
    54            // 設置收件人
    55            msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(
    56                    emailTo, false));
    57            // 設置主題
    58            msg.setSubject(title);
    59            // 設置內容
    60            msg.setText(msgs);
    61            // 設置郵件頭
    62            msg.setHeader("X-Mailer""www.dangdang.com");
    63            // 設置發送時間
    64            msg.setSentDate(new Date());
    65
    66            // 發送!
    67            Transport.send(msg);
    68
    69            System.out.println("Mail was sent successfully.\n");
    70        }
     catch (AddressException e) {
    71            e.printStackTrace();
    72        }
     catch (MessagingException e) {
    73            e.printStackTrace();
    74        }

    75    }

    76
    77    //測試
    78    public static void main(String[] argv) {
    79        for (int i = 0; i < 1000; i++)
    80            sendEmail("XXXX@qq.com""Java Mail 測試""這是程序自動給你發的!");
    81    }

    82
    83}
    posted @ 2009-06-13 15:13 Bom Wu 閱讀(684) | 評論 (0)編輯 收藏

    2009年3月22日

    首先必須在JSP中聲明這個標簽庫:
    <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

    調用方式為:fn:functionName(arg,...)
    比如:${fn:length(aCollection)}
    length是JSTL庫中自帶的函數,除此之外常的還有:

    函數

    描述

    fn:contains(string, substring)

    如果參數string中包含參數substring,返回true

    fn:containsIgnoreCase(string, substring)

    如果參數string中包含參數substring(忽略大小寫),返回true

    fn:endsWith(string, suffix)

    如果參數 string 以參數suffix結尾,返回true

    fn:escapeXml(string)

    將有特殊意義的XML (和HTML)轉換為對應的XML character entity code,并返回

    fn:indexOf(string, substring)

    返回參數substring在參數string中第一次出現的位置

    fn:join(array, separator)

    將一個給定的數組array用給定的間隔符separator串在一起,組成一個新的字符串并返回。

    fn:length(item)

    返回參數item中包含元素的數量。參數Item類型是數組、collection或者String。如果是String類型,返回值是String中的字符數。

    fn:replace(string, before, after)

    返回一個String對象。用參數after字符串替換參數string中所有出現參數before字符串的地方,并返回替換后的結果

    fn:split(string, separator)

    返回一個數組,以參數separator 為分割符分割參數string,分割后的每一部分就是數組的一個元素

    fn:startsWith(string, prefix)

    如果參數string以參數prefix開頭,返回true

    fn:substring(string, begin, end)

    返回參數string部分字符串, 從參數begin開始到參數end位置,包括end位置的字符

    fn:substringAfter(string, substring)

    返回參數substring在參數string中后面的那一部分字符串

    fn:substringBefore(string, substring)

    返回參數substring在參數string中前面的那一部分字符串

    fn:toLowerCase(string)

    將參數string所有的字符變為小寫,并將其返回

    fn:toUpperCase(string)

    將參數string所有的字符變為大寫,并將其返回

    fn:trim(string)

    去除參數string 首尾的空格,并將其返回

    posted @ 2009-03-22 16:19 Bom Wu 閱讀(4058) | 評論 (0)編輯 收藏

    2009年3月14日

     

    一、EL簡介
    1.語法結構
        ${expression}
    2.[]與.運算符
        EL 提供.和[]兩種運算符來存取數據。
        當要存取的屬性名稱中包含一些特殊字符,如.或?等并非字母或數字的符號,就一定要使用 []。例如:
            ${user.My-Name}應當改為${user["My-Name"] }
        如果要動態取值時,就可以用[]來做,而.無法做到動態取值。例如:
            ${sessionScope.user[data]}中data 是一個變量
    3.變量
        EL存取變量數據的方法很簡單,例如:${username}。它的意思是取出某一范圍中名稱為username的變量。
        因為我們并沒有指定哪一個范圍的username,所以它會依序從Page、Request、Session、Application范圍查找。
        假如途中找到username,就直接回傳,不再繼續找下去,但是假如全部的范圍都沒有找到時,就回傳null。
        屬性范圍在EL中的名稱
            Page         PageScope
            Request         RequestScope
            Session         SessionScope
            Application     ApplicationScope
           
    二、EL隱含對象
    1.與范圍有關的隱含對象
    與范圍有關的EL 隱含對象包含以下四個:pageScope、requestScope、sessionScope 和applicationScope;
    它們基本上就和JSP的pageContext、request、session和application一樣;
    在EL中,這四個隱含對象只能用來取得范圍屬性值,即getAttribute(String name),卻不能取得其他相關信息。

    例如:我們要取得session中儲存一個屬性username的值,可以利用下列方法:
        session.getAttribute("username") 取得username的值,
    在EL中則使用下列方法
        ${sessionScope.username}

    2.與輸入有關的隱含對象
    與輸入有關的隱含對象有兩個:param和paramValues,它們是EL中比較特別的隱含對象。

    例如我們要取得用戶的請求參數時,可以利用下列方法:
        request.getParameter(String name)
        request.getParameterValues(String name)
    在EL中則可以使用param和paramValues兩者來取得數據。
        ${param.name}
        ${paramValues.name}

    3.其他隱含對象

    cookie
    JSTL并沒有提供設定cookie的動作,
    例:要取得cookie中有一個設定名稱為userCountry的值,可以使用${cookie.userCountry}來取得它。

    header和headerValues
    header 儲存用戶瀏覽器和服務端用來溝通的數據
    例:要取得用戶瀏覽器的版本,可以使用${header["User-Agent"]}。
    另外在鮮少機會下,有可能同一標頭名稱擁有不同的值,此時必須改為使用headerValues 來取得這些值。

    initParam
    initParam取得設定web站點的環境參數(Context)
    例:一般的方法String userid = (String)application.getInitParameter("userid");
        可以使用 ${initParam.userid}來取得名稱為userid

    pageContext
    pageContext取得其他有關用戶要求或頁面的詳細信息。
        ${pageContext.request.queryString}         取得請求的參數字符串
        ${pageContext.request.requestURL}         取得請求的URL,但不包括請求之參數字符串
        ${pageContext.request.contextPath}         服務的web application 的名稱
        ${pageContext.request.method}           取得HTTP 的方法(GET、POST)
        ${pageContext.request.protocol}         取得使用的協議(HTTP/1.1、HTTP/1.0)
        ${pageContext.request.remoteUser}         取得用戶名稱
        ${pageContext.request.remoteAddr }         取得用戶的IP 地址
        ${pageContext.session.new}             判斷session 是否為新的
        ${pageContext.session.id}               取得session 的ID
        ${pageContext.servletContext.serverInfo}   取得主機端的服務信息

    三、EL運算符
    1.算術運算符有五個:+、-、*或$、/或div、%或mod
    2.關系運算符有六個:==或eq、!=或ne、<或lt、>或gt、<=或le、>=或ge
    3.邏輯運算符有三個:&&或and、||或or、!或not
    4.其它運算符有三個:Empty運算符、條件運算符、()運算符
        例:${empty param.name}、${A?B:C}、${A*(B+C)}

    四、EL函數(functions)。
    語法:ns:function( arg1, arg2, arg3 …. argN)
    其中ns為前置名稱(prefix),它必須和taglib 指令的前置名稱一置

    ---------------------------------------------

    補充:

    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>

    FOREACH:

    <c:forEach items="${messages}"
    var="item"
    begin="0"
    end="9"
    step="1"
    varStatus="var">
    ……
    </c:forEach>

     

    OUT:

    <c:out value="/${logininfo.username}"/>
    c:out>將value 中的內容輸出到當前位置,這里也就是把logininfo 對象的
    username屬性值輸出到頁面當前位置。
    ${……}是JSP2.0 中的Expression Language(EL)的語法。它定義了一個表達式,
    其中的表達式可以是一個常量(如上),也可以是一個具體的表達語句(如forEach循環體中
    的情況)。典型案例如下:
    Ø ${logininfo.username}
    這表明引用logininfo 對象的username 屬性。我們可以通過“.”操作符引
    用對象的屬性,也可以用“[]”引用對象屬性,如${logininfo[username]}
    與${logininfo.username}達到了同樣的效果。
    “[]”引用方式的意義在于,如果屬性名中出現了特殊字符,如“.”或者“-”,
    此時就必須使用“[]”獲取屬性值以避免語法上的沖突(系統開發時應盡量避免
    這一現象的出現)。
    與之等同的JSP Script大致如下:
    LoginInfo logininfo =
    (LoginInfo)session.getAttribute(“logininfo”);
    String username = logininfo.getUsername();
    可以看到,EL大大節省了編碼量。
    這里引出的另外一個問題就是,EL 將從哪里找到logininfo 對象,對于
    ${logininfo.username}這樣的表達式而言,首先會從當前頁面中尋找之前是
    否定義了變量logininfo,如果沒有找到則依次到Request、Session、
    Application 范圍內尋找,直到找到為止。如果直到最后依然沒有找到匹配的
    變量,則返回null.
    如果我們需要指定變量的尋找范圍,可以在EL表達式中指定搜尋范圍:
    ${pageScope.logininfo.username}
    ${requestScope.logininfo.username}
    ${sessionScope.logininfo.username}
    ${applicationScope.logininfo.username}
    在Spring 中,所有邏輯處理單元返回的結果數據,都將作為Attribute 被放
    置到HttpServletRequest 對象中返回(具體實現可參見Spring 源碼中
    org.springframework.web.servlet.view.InternalResourceView.
    exposeModelAsRequestAttributes方法的實現代碼),也就是說Spring
    MVC 中,結果數據對象默認都是requestScope。因此,在Spring MVC 中,
    以下尋址方法應慎用:
    ${sessionScope.logininfo.username}
    ${applicationScope.logininfo.username}
    Ø ${1+2}
    結果為表達式計算結果,即整數值3。
    Ø ${i>1}
    如果變量值i>1的話,將返回bool類型true。與上例比較,可以發現EL會自
    動根據表達式計算結果返回不同的數據類型。
    表達式的寫法與java代碼中的表達式編寫方式大致相同。


    IF / CHOOSE:

    <c:if test="${var.index % 2 == 0}">
    *
    </c:if>
    判定條件一般為一個EL表達式。
    <c:if>并沒有提供else子句,使用的時候可能有些不便,此時我們可以通過<c:choose>
    tag來達到類似的目的:
    <c:choose>
    <c:when test="${var.index % 2 == 0}">
    *
    </c:when>
    <c:otherwise>
    !
    </c:otherwise>
    </c:choose>
    類似Java 中的switch 語句,<c:choose>提供了復雜判定條件下的簡化處理手法。其
    中<c:when>子句類似case子句,可以出現多次。上面的代碼,在奇數行時輸出“*”號,
    而偶數行時輸出“!”。
    ---------------------------------------------

    再補充:

    1    EL表達式用${}表示,可用在所有的HTML和JSP標簽中 作用是代替JSP頁面中復雜的JAVA代碼.

            2   EL表達式可操作常量 變量 和隱式對象. 最常用的 隱式對象有${param}和${paramValues}. ${param}表示返回請求參數中單個字符串的值. ${paramValues}表示返回請求參數的一組值.pageScope表示頁面范圍的變量.requestScope表示請求對象的變量. sessionScope表示會話范圍內的變量.applicationScope表示應用范圍的變量.

            3   <%@ page isELIgnored="true"%> 表示是否禁用EL語言,TRUE表示禁止.FALSE表示不禁止.JSP2.0中默認的啟用EL語言.

            4   EL語言可顯示 邏輯表達式如${true and false}結果是false    關系表達式如${5>6} 結果是false     算術表達式如 ${5+5} 結果是10

            5   EL中的變量搜索范圍是:page request session application   點運算符(.)和"[ ]"都是表示獲取變量的值.區別是[ ]可以顯示非詞類的變量

    posted @ 2009-03-14 19:46 Bom Wu 閱讀(576) | 評論 (0)編輯 收藏

    2008年12月30日

     

    JTextArea jta=new JTextArea(20,20);
    JScrollPane jsp
    =new JScrollPane(jta);
    jta.addMouseWheelListener(
    new MouseWheelListener(){
     
    public void mouseWheelMoved(MouseWheelEvent e){
       jsp.dispatchEvent(e); 
    //將事件交給JScrollPane處理
    }

    }
    );
    這樣在JTextArea里滾動鼠標,滾動條就會滾動
    posted @ 2008-12-30 10:13 Bom Wu 閱讀(345) | 評論 (0)編輯 收藏

    2008年12月24日

    圣誕快樂 圣誕快樂
    posted @ 2008-12-24 19:28 Bom Wu 閱讀(161) | 評論 (0)編輯 收藏

    2008年12月20日

        JOptionPane調用靜態方法彈出對話框時,按鈕的語言為默認的本地語言,使用Locale.setDefaul()方法改變語言后,JOptionPane對話框的語言不能刷新,這時還應該改變JCompenent的默認Locale。
    例,改為英文:

    Locale.setDefault(Locale.ENGLISH);
    sun.awt.AppContext.getAppContext().put("JComponent.defaultLocale", Locale.ENGLISH);
    posted @ 2008-12-20 15:32 Bom Wu 閱讀(588) | 評論 (0)編輯 收藏

    2008年12月4日

            今天是個特別的日子!   
            這是我這兩年以來最高興的日子,所以我一定要在這寫下來,跟朋友們分享我的喜悅!我現在都恨不得告訴全世界所有的人。
            原本以為,我的大學生活就要這么平淡的過去。但是老天還是給了我個機會,讓我遇見了她,一個我心目中的好女孩。今天,她終于答應了我,讓我有機會在以后照顧她。
            我一定會好好珍惜,現在的我已經知道什么是最重要的,一定會好好待她,讓她成為世界上最幸福的人!

    posted @ 2008-12-04 11:27 Bom Wu 閱讀(152) | 評論 (0)編輯 收藏
    僅列出標題  下一頁
     
    主站蜘蛛池模板: 日本大片在线看黄a∨免费| 亚洲色欲一区二区三区在线观看| 亚洲aⅴ天堂av天堂无码麻豆| 免费乱码中文字幕网站| a级毛片在线视频免费观看| 日本亚洲精品色婷婷在线影院 | 免费一级毛片在线播放视频| 亚洲午夜成激人情在线影院| 波多野结衣免费视频观看| 久99久精品免费视频热77| 青青青亚洲精品国产| 亚洲精品人成在线观看| 国产免费直播在线观看视频| 一级毛片免费毛片一级毛片免费 | 亚洲成综合人影院在院播放| 国产一级特黄高清免费大片| 久久99精品免费视频| 成人精品国产亚洲欧洲| 亚洲天堂久久精品| 免费人成视网站在线观看不卡| 免费国产污网站在线观看15| 真正全免费视频a毛片| 亚洲国产精品综合久久网各| 国产亚洲美女精品久久久2020| 影音先锋在线免费观看| 四虎影视成人永久免费观看视频 | 亚洲乱码一二三四区国产| 在线播放亚洲第一字幕| 在线免费观看一级片| 免费无码毛片一区二区APP| 日韩在线观看免费| 亚洲日韩国产AV无码无码精品| 亚洲国产一区国产亚洲| 亚洲精品成人a在线观看| 最新免费jlzzjlzz在线播放| 午夜精品射精入后重之免费观看| 一个人看的www免费高清| 亚洲丁香婷婷综合久久| 亚洲一区精品视频在线| 亚洲黄色三级视频| 日韩精品一区二区亚洲AV观看 |