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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

springBoot-Quartz 定时任务

發布時間:2023/12/18 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springBoot-Quartz 定时任务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.1 Quartz 概述

Quartz 是 OpenSymphony 開源組織在任務調度領域的一個開源項目,完全基于 Java 實現。該項目于 2009 年被 Terracotta 收購,目前是 Terracotta 旗下的一個項目。讀者可以到 http://www.quartz-scheduler.org/站點下載 Quartz 的發布版本及其源代碼。

1.2 Quartz特點

作為一個優秀的開源調度框架,Quartz 具有以下特點:

強大的調度功能,例如支持豐富多樣的調度方法,可以滿足各種常規及特殊需求;
靈活的應用方式,例如支持任務和調度的多種組合方式,支持調度數據的多種存儲方式;
分布式和集群能力,Terracotta 收購后在原來功能基礎上作了進一步提升。
另外,作為 Spring 默認的調度框架,Quartz 很容易與 Spring 集成實現靈活可配置的調度功能。

quartz調度核心元素:

  • Scheduler:任務調度器,是實際執行任務調度的控制器。在spring中通過SchedulerFactoryBean封裝起來。
  • Trigger:觸發器,用于定義任務調度的時間規則,有SimpleTrigger,CronTrigger,DateIntervalTrigger和NthIncludedDayTrigger,其中CronTrigger用的比較多,本文主要介紹這種方式。CronTrigger在spring中封裝在CronTriggerFactoryBean中。
  • Calendar:它是一些日歷特定時間點的集合。一個trigger可以包含多個Calendar,以便排除或包含某些時間點。
  • JobDetail:用來描述Job實現類及其它相關的靜態信息,如Job名字、關聯監聽器等信息。在spring中有JobDetailFactoryBean和 MethodInvokingJobDetailFactoryBean兩種實現,如果任務調度只需要執行某個類的某個方法,就可以通過MethodInvokingJobDetailFactoryBean來調用。
  • Job:是一個接口,只有一個方法void execute(JobExecutionContext context),開發者實現該接口定義運行任務,JobExecutionContext類提供了調度上下文的各種信息。Job運行時的信息保存在JobDataMap實例中。實現Job接口的任務,默認是無狀態的,若要將Job設置成有狀態的,在quartz中是給實現的Job添加@DisallowConcurrentExecution注解(以前是實現StatefulJob接口,現在已被Deprecated),在與spring結合中可以在spring配置文件的job detail中配置concurrent參數。

1.3 Quartz 集群配置

quartz集群是通過數據庫表來感知其他的應用的,各個節點之間并沒有直接的通信。只有使用持久的JobStore才能完成Quartz集群。
數據庫表:以前有12張表,現在只有11張表,現在沒有存儲listener相關的表,多了QRTZ_SIMPROP_TRIGGERS表:

  • 建表sql 點這里
    如果沒有積分可以留言,我發給你哦。只是可能會比較晚

    QRTZ_LOCKS就是Quartz集群實現同步機制的行鎖表,包括以下幾個鎖:CALENDAR_ACCESS 、JOB_ACCESS、MISFIRE_ACCESS 、STATE_ACCESS 、TRIGGER_ACCESS。

動手

記得要先新建數據庫,新建默認創建的11 張表哦

導入maven 依賴

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--quartz--><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>2.2.1</version></dependency><!--因為quartz 需要有Spring context 所有引入mail包--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>com.zaxxer</groupId><artifactId>HikariCP</artifactId><version>3.2.0</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId></dependency>

QuartzConfig

package com.abel.quartz.config;import java.beans.PropertyVetoException; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Properties;import com.zaxxer.hikari.HikariDataSource; import org.quartz.Job; import org.quartz.JobDetail; import org.quartz.Trigger; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.quartz.CronTriggerFactoryBean; import org.springframework.scheduling.quartz.JobDetailFactoryBean; import org.springframework.scheduling.quartz.SchedulerFactoryBean;/*** Created by yangyibo on 2019/1/16.*/ @Configuration public class QuartzConfig {/*** 1.通過name+group獲取唯一的jobKey;2.通過groupname來獲取其下的所有jobkey*/final static String GROUP_NAME = "QuartzJobGroups";@Value("${quartz.scheduler.instanceName}")private String quartzInstanceName;@Value("${spring.datasource.driverClassName}")private String myDSDriver;@Value("${spring.datasource.url}")private String myDSUrl;@Value("${spring.datasource.username}")private String myDSUser;@Value("${spring.datasource.password}")private String myDSPassword;@Value("${org.quartz.dataSource.myDS.maxConnections}")private int myDSMaxConnections;/*** 設置屬性** @return* @throws IOException*/private Properties quartzProperties() throws IOException {Properties prop = new Properties();// 調度標識名 集群中每一個實例都必須使用相同的名稱prop.put("quartz.scheduler.instanceName", quartzInstanceName);// ID設置為自動獲取 每一個必須不同prop.put("org.quartz.scheduler.instanceId", "AUTO");// 禁用quartz軟件更新prop.put("org.quartz.scheduler.skipUpdateCheck", "true");prop.put("org.quartz.scheduler.jmx.export", "true");// 數據庫代理類,一般org.quartz.impl.jdbcjobstore.StdJDBCDelegate可以滿足大部分數據庫prop.put("org.quartz.jobStore.driverDelegateClass", "org.quartz.impl.jdbcjobstore.StdJDBCDelegate");// 數據保存方式為數據庫持久化prop.put("org.quartz.jobStore.class", "org.quartz.impl.jdbcjobstore.JobStoreTX");// 數據庫別名 隨便取prop.put("org.quartz.jobStore.dataSource", "quartzDataSource");//prop.put("org.quartz.jobStore.dataSource", "myDS");// 表的前綴,默認QRTZ_prop.put("org.quartz.jobStore.tablePrefix", "QRTZ_");// 是否加入集群prop.put("org.quartz.jobStore.isClustered", "true");// 調度實例失效的檢查時間間隔prop.put("org.quartz.jobStore.clusterCheckinInterval", "20000");prop.put("org.quartz.jobStore.maxMisfiresToHandleAtATime", "1");// 信息保存時間 ms 默認值60秒prop.put("org.quartz.jobStore.misfireThreshold", "120000");prop.put("org.quartz.jobStore.txIsolationLevelSerializable", "true");prop.put("org.quartz.jobStore.selectWithLockSQL", "SELECT * FROM {0}LOCKS WHERE LOCK_NAME = ? FOR UPDATE");// 程池的實現類(一般使用SimpleThreadPool即可滿足幾乎所有用戶的需求)prop.put("org.quartz.threadPool.class", "org.quartz.simpl.SimpleThreadPool");// 定線程數,至少為1(無默認值)(一般設置為1-100之間的整數合適)prop.put("org.quartz.threadPool.threadCount", "10");// 設置線程的優先級(最大為java.lang.Thread.MAX_PRIORITY 10,最小為Thread.MIN_PRIORITY 1,默認為5)prop.put("org.quartz.threadPool.threadPriority", "5");prop.put("org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread", "true");prop.put("org.quartz.plugin.triggHistory.class", "org.quartz.plugins.history.LoggingJobHistoryPlugin");prop.put("org.quartz.plugin.shutdownhook.class", "org.quartz.plugins.management.ShutdownHookPlugin");prop.put("org.quartz.plugin.shutdownhook.cleanShutdown", "true");//#自定義連接池//org.quartz.dataSource.myDS.connectionProvider.class=com.poly.pay.schedule.DruidConnectionProviderreturn prop;}/*** 數據源** @return* @throws PropertyVetoException*/@Beanpublic HikariDataSource createDataSource() throws PropertyVetoException {HikariDataSource dataSource = new HikariDataSource();dataSource.setJdbcUrl(myDSUrl);dataSource.setDriverClassName(myDSDriver);dataSource.setUsername(myDSUser);dataSource.setPassword(myDSPassword);dataSource.setMaximumPoolSize(myDSMaxConnections);return dataSource;}/*** 創建觸發器工廠** @param jobDetail* @param cronExpression* @return*/private static CronTriggerFactoryBean cronTriggerFactoryBean(JobDetail jobDetail, String cronExpression) {CronTriggerFactoryBean factoryBean = new CronTriggerFactoryBean();factoryBean.setJobDetail(jobDetail);factoryBean.setCronExpression(cronExpression);return factoryBean;}/****************************************************以下配置需要注意******************************************************//*** 調度工廠* 此處配置需要調度的觸發器 例如 executeJobTrigger** @param executeJobTrigger* @return* @throws IOException* @throws PropertyVetoException*/@Beanpublic SchedulerFactoryBean schedulerFactoryBean(@Qualifier("executeJobTrigger") Trigger executeJobTrigger) throws IOException, PropertyVetoException {SchedulerFactoryBean factory = new SchedulerFactoryBean();// this allows to update triggers in DB when updating settings in config file://用于quartz集群,QuartzScheduler 啟動時更新己存在的Job,這樣就不用每次修改targetObject后刪除qrtz_job_details表對應記錄了factory.setOverwriteExistingJobs(true);//用于quartz集群,加載quartz數據源//factory.setDataSource(dataSource);//QuartzScheduler 延時啟動,應用啟動完10秒后 QuartzScheduler 再啟動//factory.setStartupDelay(10);//用于quartz集群,加載quartz數據源配置factory.setAutoStartup(true);factory.setQuartzProperties(quartzProperties());factory.setApplicationContextSchedulerContextKey("applicationContext");factory.setDataSource(createDataSource());//注冊觸發器Trigger[] triggers = {executeJobTrigger};factory.setTriggers(triggers);return factory;}/*** 加載觸發器** 新建觸發器進行job 的調度 例如 executeJobDetail* @param jobDetail* @return*/@Bean(name = "executeJobTrigger")public CronTriggerFactoryBean executeJobTrigger(@Qualifier("executeJobDetail") JobDetail jobDetail) {//每天凌晨3點執行return cronTriggerFactoryBean(jobDetail, "0 1 0 * * ? ");}/*** 加載job** 新建job 類用來代理*** @return*/@Beanpublic JobDetailFactoryBean executeJobDetail() {return createJobDetail(InvokingJobDetailFactory.class, GROUP_NAME, "executeJob");}/*** 執行規則job工廠** 配置job 類中需要定時執行的 方法 execute* @param jobClass* @param groupName* @param targetObject* @return*/private static JobDetailFactoryBean createJobDetail(Class<? extends Job> jobClass,String groupName,String targetObject) {JobDetailFactoryBean factoryBean = new JobDetailFactoryBean();factoryBean.setJobClass(jobClass);factoryBean.setDurability(true);factoryBean.setRequestsRecovery(true);factoryBean.setGroup(groupName);Map<String, String> map = new HashMap<>();map.put("targetMethod", "execute");map.put("targetObject", targetObject);factoryBean.setJobDataAsMap(map);return factoryBean;}}

InvokingJobDetailFactory

package com.abel.quartz.config;import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import org.springframework.context.ApplicationContext; import org.springframework.scheduling.quartz.QuartzJobBean; import java.lang.reflect.Method;/*** Created by yangyibo on 2019/2/1.*/ public class InvokingJobDetailFactory extends QuartzJobBean {/*** 計劃任務所在類*/private String targetObject;/*** 具體需要執行的計劃任務*/private String targetMethod;private ApplicationContext ctx;@Overrideprotected void executeInternal(JobExecutionContext context) throws JobExecutionException {try {Object obj = ctx.getBean(targetObject);Method m = null;try {m = obj.getClass().getMethod(targetMethod);//調用被代理對象的方法m.invoke(obj);} catch (SecurityException e) {e.printStackTrace();} catch (NoSuchMethodException e) {e.printStackTrace();}} catch (Exception e) {throw new JobExecutionException(e);}}public void setApplicationContext(ApplicationContext applicationContext) {this.ctx = applicationContext;}public void setTargetObject(String targetObject) {this.targetObject = targetObject;}public void setTargetMethod(String targetMethod) {this.targetMethod = targetMethod;} }

ExecuteJob

package com.abel.quartz.job;import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service;/*** Created by yangyibo on 2019/2/1.*/ @Service public class ExecuteJob {private static final Logger logger = LoggerFactory.getLogger(ExecuteJob.class);/*** 方法名在quartz定義*/public void execute() {System.out.println("定時任務執行了。。。。。");} }

application.properties

## tomcat配置 server.port=8090 #server.tomcat.maxHttpHeaderSize=8192 server.tomcat.uri-encoding=UTF-8 spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true spring.http.encoding.force=true spring.messages.encoding=UTF-8 # tomcat最大線程數,默認為200 server.tomcat.max-threads=800 # session最大超時時間(分鐘),默認為30 server.session-timeout=60## spring 配置 spring.application.name=springboot-Quartz application.main=com.abel.quartz.Application## 主數據源,默認的 spring.datasource.url=jdbc:mysql://localhost:3306/quart?autoReconnect=true&useUnicode=true&characterEncoding=utf-8&useSSL=false spring.datasource.username=root spring.datasource.password=admin spring.datasource.driverClassName=com.mysql.jdbc.Driver## 連接池配置 spring.datasource.type=com.zaxxer.hikari.HikariDataSource #最小空閑連接 spring.datasource.hikari.minimum-idle=10 #連接池中允許的最大連接數。缺省值:10;推薦的公式:((core_count * 2) + effective_spindle_count) spring.datasource.hikari.maximum-pool-size=30 #spring.datasource.hikari.auto-commit=true #一個連接idle狀態的最大時長(毫秒),超時則被釋放(retired),缺省:10分鐘。minimumIdle<maximumPoolSize時生效 spring.datasource.hikari.idle-timeout=120000 #自定義連接池名 #spring.datasource.hikari.pool-name=DatebookHikariCP #一個連接的生命時長(毫秒),超時而且沒被使用則被釋放(retired),缺省:30分鐘,建議設置比數據庫超時時長少30秒,參考MySQL wait_timeout參數(show variables like '%timeout%';) spring.datasource.hikari.max-lifetime=1800000 #等待連接池分配連接的最大時長(毫秒),超過這個時長還沒可用的連接則發生SQLException, 缺省:30秒 spring.datasource.hikari.connection-timeout=30000 #指定驗證連接有效性的超時時間,默認是5秒 spring.datasource.hikari.validation-timeout=3000 spring.datasource.hikari.connection-test-query=SELECT 1# 調度標識名 集群中每一個實例都必須使用相同的名稱 quartz.scheduler.instanceName=QuartScheduler # 允許最大連接 org.quartz.dataSource.myDS.maxConnections=10

源代碼地址:https://github.com/527515025/springBoot/tree/master/springboot-Quartz
參考資料:https://blog.csdn.net/lkl_csdn/article/details/73613033

總結

以上是生活随笔為你收集整理的springBoot-Quartz 定时任务的全部內容,希望文章能夠幫你解決所遇到的問題。

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

a√天堂资源 | 国产午夜精品久久 | 久久成人午夜视频 | 在线观看黄色免费视频 | 娇妻呻吟一区二区三区 | 香蕉影院在线播放 | 日韩精品中文字幕在线不卡尤物 | 色91在线| 久久99国产精品免费网站 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产一级做a爱片久久毛片a | 成人午夜电影免费在线观看 | 精品国产一区二区久久 | 99久久久久免费精品国产 | www久久| 久久少妇免费视频 | 在线天堂日本 | 欧美精品乱码久久久久久按摩 | 亚洲综合欧美日韩狠狠色 | 成人日批视频 | 丁香婷婷综合网 | 日韩午夜大片 | 国产日本在线 | 999国内精品永久免费视频 | a天堂一码二码专区 | 日韩欧美视频一区二区三区 | 日韩一区二区三区免费电影 | 91麻豆传媒 | 亚洲精品伦理在线 | 人人爽人人香蕉 | 国产麻豆视频网站 | 久久九精品| 日黄网站| 国产一区福利在线 | 日韩高清在线看 | 特级西西444www大胆高清无视频 | 久久久资源网 | 热久久影视| 精品国产成人 | 美女性爽视频国产免费app | 国产精品嫩草影院99网站 | 91在线porny国产在线看 | 免费看一级一片 | 成人黄色小说视频 | 999日韩| 国产精品福利在线播放 | 亚洲精品成人在线 | 少妇搡bbbb搡bbb搡69 | 国产精品区二区三区日本 | 国产一区在线视频播放 | 天天色综合1 | 在线观看视频你懂的 | 一区二区三区免费在线观看 | 波多野结衣亚洲一区二区 | 日韩中文字幕网站 | 欧美在线1| 成人丝袜 | 久久欧洲视频 | 在线观看成年人 | 国产高清第一页 | 色大片免费看 | 天天操天天透 | 4438全国亚洲精品观看视频 | 97色视频在线 | 天天操天天干天天插 | 91免费观看视频网站 | 国产一区麻豆 | 成人黄色在线播放 | 91精品视频免费观看 | 国产精品男女 | 成人欧美一区二区三区黑人麻豆 | 911国产 | 色噜噜狠狠狠狠色综合久不 | 国产日韩精品一区二区在线观看播放 | 日本黄色免费在线观看 | 欧美精品久久久久久久 | 欧美日韩网站 | 午夜精品久久久 | 成人av电影在线 | 国模一二三区 | 久久精彩免费视频 | 九九九电影免费看 | 五月婷婷.com | 免费看黄在线观看 | 91久久奴性调教 | 天天干,天天干 | 一本一道波多野毛片中文在线 | 丝袜网站在线观看 | 88av网站 | 久久99亚洲网美利坚合众国 | 综合久久综合久久 | 欧洲激情综合 | 亚洲一区二区视频在线播放 | 婷婷色资源 | 91亚洲永久精品 | 天堂网一区二区 | 91精品综合| 国产精品麻豆欧美日韩ww | 六月丁香在线视频 | 日韩精品免费一区 | 午夜精品一区二区三区在线观看 | 黄色网址a | 免费观看一区 | 五月婷视频| 91久久久国产精品 | 亚洲一区久久 | 黄网站a| 天天拍天天操 | 久久亚洲综合色 | 黄网站免费大全入口 | 丁香六月天婷婷 | 久久精品视频在线 | 日本韩国精品一区二区在线观看 | 久久精品区 | 久久国产热 | 五月婷婷黄色 | 天天干,天天射,天天操,天天摸 | 成人91免费视频 | 久99久在线视频 | 91在线看| 天海冀一区二区三区 | 超碰国产在线观看 | 国产精品一区久久久久 | 91豆花在线观看 | 91一区二区三区久久久久国产乱 | 97理论片 | 婷婷网在线 | 天堂av一区二区 | 亚洲精品欧美专区 | 超碰在线人人艹 | 国产精品久久久久久久久久久不卡 | 成人av电影免费 | 91麻豆精品一区二区三区 | 国产精品ⅴa有声小说 | 国产精品6999成人免费视频 | 美女网站黄在线观看 | 黄色www| 天天干中文字幕 | 999久久国精品免费观看网站 | 综合色婷婷| 91香蕉视频黄 | 国产激情小视频在线观看 | 精品免费一区二区三区 | 亚洲国产精品va在线看黑人动漫 | 精品久久网| 精品国产成人在线 | 久久手机在线视频 | 欧美久久电影 | 美女视频黄免费的 | 免费aa大片 | 在线99热 | 波多野结衣精品在线 | 狠狠干狠狠色 | 日韩在线短视频 | 国产日产欧美在线观看 | 天天爱天天操 | 国产成人一区二区啪在线观看 | 色综合网在线 | 日韩免费区 | 精品少妇一区二区三区在线 | 天天爱天天操 | 久久久久久国产精品亚洲78 | 久久国产精品久久久 | 波多野结衣综合网 | 狠狠操操网 | jizz欧美性9 国产一区高清在线观看 | 欧美污在线观看 | 亚洲国产激情 | 天天射天天艹 | 久久最新视频 | 国内精品久久久久影院优 | 精品一区二区在线免费观看 | 视频在线观看一区 | 亚洲精品美女久久 | 99热国产在线观看 | 精品一区91 | 中文在线中文资源 | 国产午夜精品一区二区三区四区 | 国产精品18videosex性欧美 | 国产专区一 | a午夜在线 | 久久久久福利视频 | 日韩中文字幕亚洲一区二区va在线 | 亚洲人人爱| 天天综合狠狠精品 | 五月天激情视频 | 久久精品—区二区三区 | 97精品国产91久久久久久 | 黄色av在| 久久艹影院 | 在线观看日韩精品 | 亚洲人成综合 | 这里只有精彩视频 | 国产精品国内免费一区二区三区 | 亚洲dvd| 亚洲人成精品久久久久 | 天天干天天想 | 美女网站黄免费 | 亚洲电影黄色 | 亚洲欧洲视频 | 国产中文字幕视频在线观看 | 精品日本视频 | 天天操天天操天天操天天操天天操天天操 | 国产中文字幕视频在线观看 | 中文字幕网站 | 国精产品一二三线999 | 97超碰人人干 | 久久精品视频网站 | 看片黄网站 | 成人一区二区三区在线观看 | 亚洲精品高清视频 | 91视频免费网址 | 99久久日韩精品视频免费在线观看 | 成人a级黄色片 | 日韩 在线 | 久久一区二区三区日韩 | 色综合色综合色综合 | 成人黄色小视频 | 久久久久久久久久久网站 | 亚洲欧美国产视频 | 久久免费视频这里只有精品 | 久草在线国产 | 中文网丁香综合网 | 色99视频 | 日韩av资源在线观看 | 亚洲欧美成人综合 | 91av在线看| 久久久久国产精品免费 | 干 操 插| 亚洲成人第一区 | www.玖玖玖 | 成人久久毛片 | 一级a毛片高清视频 | 中文字幕在线网址 | 久久久久久久影视 | 婷婷丁香色 | 亚在线播放中文视频 | 精品国产成人av | 天天射综合 | www色网站 | 国产日韩欧美自拍 | 欧美精品久久久久久久久久丰满 | 成人国产精品 | 久久免费一 | 久久国产精品免费视频 | 免费三级在线 | 亚洲精品福利视频 | 制服丝袜在线 | 99re8这里有精品热视频免费 | 欧美人人爱| 九色porny真实丨国产18 | 欧美日韩在线观看一区二区 | 久久国产精品久久久久 | 在线综合色 | 中文字幕乱码电影 | 欧美日韩视频一区二区三区 | 日韩在线无 | 91在线入口 | 国产亚洲一区二区三区 | 99视频偷窥在线精品国自产拍 | 激情综合网五月激情 | 亚洲第一成网站 | 成人一区二区三区在线观看 | 香蕉精品在线观看 | 午夜狠狠操 | 国内精品中文字幕 | 91亚洲激情 | 国产资源在线视频 | 久久综合免费视频影院 | 在线成人性视频 | 91完整版观看 | 精品国产视频在线观看 | 国产一区国产精品 | 亚洲精品国内 | 午夜视频二区 | 欧美性生活小视频 | 在线观看成人毛片 | 中文字幕在线久一本久 | 337p日本欧洲亚洲大胆裸体艺术 | 久久综合久久综合久久 | 亚洲免费在线 | 国产在线精品国自产拍影院 | 99久久久国产精品免费99 | 激情 婷婷| 亚州国产视频 | 五月天久久精品 | 蜜桃av久久久亚洲精品 | 涩涩爱夜夜爱 | 久久久国产精华液 | 久艹在线免费观看 | 日韩欧美一区二区三区视频 | 国产一区二区高清视频 | 在线观看黄色的网站 | 色吊丝在线永久观看最新版本 | 97偷拍在线视频 | 91在线porny国产在线看 | 亚洲精品久久激情国产片 | 蜜臀av网址| 欧美激情xxxx | 国产精品成人av在线 | 亚洲一级电影 | 最近2019好看的中文字幕免费 | 久久免费av| 久草在线免费在线观看 | 九九热视频在线播放 | 久久免费精品 | 日韩精品一区二区三区高清免费 | 精品国产一区二区三区在线观看 | 在线观看成人网 | 九九热在线观看 | 9免费视频 | 在线视频中文字幕一区 | 最新日本中文字幕 | 成人av电影在线 | 中文字幕影片免费在线观看 | 国产在线97| 国产精品视频永久免费播放 | av日韩在线网站 | 国产精品久久久久亚洲影视 | 二区中文字幕 | 国产一区欧美在线 | 中文字幕一区二区三区四区 | 免费成人av电影 | 精品久久久久久综合日本 | 日韩字幕 | 天天操天天干天天插 | 精品视频免费久久久看 | 久草网在线视频 | 91天天操 | 日韩欧美有码在线 | 国产在线精品一区二区 | 久草在线官网 | 国产精品网红直播 | 午夜精品福利影院 | www.五月婷婷 | 午夜视频在线瓜伦 | 99久久99视频只有精品 | 久久精品在线免费观看 | 国产精品日韩欧美 | 欧美亚洲成人免费 | 亚洲国产成人久久 | 色偷偷88888欧美精品久久久 | 欧美日韩视频在线一区 | 日本精品久久久久久 | 亚洲成人影音 | 久久综合色影院 | 亚洲成人黄色网址 | www.人人草 | 国产精品午夜在线观看 | 99久久er热在这里只有精品66 | 97偷拍视频 | 天天操天天玩 | 午夜国产福利在线 | a√天堂资源 | 在线观看视频日韩 | 天堂久久电影网 | 天天操福利视频 | 成人小视频在线 | 亚洲精品国偷拍自产在线观看 | 亚洲手机天堂 | 国产99久久久精品 | 五月婷婷丁香网 | 国产传媒一区在线 | 国产精品乱码高清在线看 | 亚洲日本欧美 | 九九视频在线观看视频6 | www.久久精品视频 | www.狠狠操 | 天天夜夜操| 日韩精品专区在线影院重磅 | 超碰大片| 久操视频在线免费看 | 久久草草影视免费网 | 欧美精品黑人性xxxx | 午夜视频在线观看一区二区三区 | 天天干夜夜夜 | 国产九九在线 | www.福利 | 91免费观看视频网站 | 午夜精品福利一区二区三区蜜桃 | 国产精品美女久久久久aⅴ 干干夜夜 | 亚洲一区 影院 | 97超碰在线久草超碰在线观看 | 伊人亚洲综合网 | 欧美精品久久久久久久久久 | 免费看片网站91 | 99精品视频在线观看 | 久草视频在线资源站 | 亚洲天堂精品视频 | 日本高清xxxx | 精品专区| 伊人网综合在线观看 | 夜夜夜影院 | 久久大片 | 91超级碰碰 | 蜜桃视频色 | 少妇视频一区 | 国产美女主播精品一区二区三区 | 久久99精品国产麻豆婷婷 | 国产99视频在线观看 | 黄色成年片 | 免费在线观看成人 | 国产精品精品久久久久久 | 在线观看你懂的网站 | 69国产盗摄一区二区三区五区 | 人人草在线观看 | 日韩黄色av网站 | 欧美日韩精品网站 | 97偷拍视频 | 亚洲高清精品在线 | 午夜狠狠干| 亚洲精品合集 | 日韩高清一区在线 | 欧美日韩二三区 | 久久99精品波多结衣一区 | 久久精品国产亚洲aⅴ | 免费观看性生活大片 | 99久久久久成人国产免费 | 热久久视久久精品18亚洲精品 | 五月婷婷丁香 | 午夜国产一区二区 | 视频在线播放国产 | 国产黄色美女 | 啪啪免费视频网站 | 在线观看日本韩国电影 | 国产又粗又猛又爽又黄的视频免费 | 国产一区不卡在线 | 久久无码av一区二区三区电影网 | www日日夜夜 | 一区二区欧美日韩 | 97在线成人 | 中文字幕在线影视资源 | 亚洲国产精久久久久久久 | 国产精品女同一区二区三区久久夜 | 日韩精品一区在线观看 | 男女男视频 | 久久久精品视频网站 | 免费麻豆网站 | 亚洲最大激情中文字幕 | 亚洲精品国偷自产在线91正片 | 深爱激情亚洲 | 国产一区福利 | 日韩剧情 | 天天操夜夜做 | 欧美激情片在线观看 | 亚洲欧洲一区二区在线观看 | 日韩在线一二三区 | 精品女同一区二区三区在线观看 | 99精品免费在线观看 | 亚洲一级电影在线观看 | 国产精品毛片一区二区 | 亚洲h色精品 | 国产黄色在线网站 | 成人久久久电影 | 人人澡人人添人人爽一区二区 | 99视频在线免费 | 日韩va亚洲va欧美va久久 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 精品视频www | 亚洲精品www久久久 www国产精品com | 国产一区二区视频在线 | 在线观看国产一区二区 | 国产精品九九九九九 | 天天爽夜夜爽人人爽曰av | 亚洲免费观看视频 | 99精品在线免费在线观看 | 蜜臀av夜夜澡人人爽人人 | 亚洲精品乱码久久久久久 | 97国产| 亚洲成人软件 | 91麻豆.com| 中文字幕在线观看一区 | 福利网在线 | 欧美粗又大 | 色婷婷电影网 | 国产精品精品国产色婷婷 | 免费a视频在线观看 | 色吊丝在线永久观看最新版本 | 国产精品久久久久久久久久尿 | 涩涩爱夜夜爱 | 亚洲精品18p | 欧美性粗大hdvideo | 玖玖国产精品视频 | 色五月情 | 日本午夜在线亚洲.国产 | 成人av网站在线播放 | 射九九 | 黄色小网站在线 | 99久久综合狠狠综合久久 | 成人网看片 | 久久精品女人毛片国产 | 天天操狠狠干 | 国产亚洲人成网站在线观看 | 国产精品成人一区二区三区 | 国产三级午夜理伦三级 | 国产五月色婷婷六月丁香视频 | 麻豆激情电影 | 99热精品国产一区二区在线观看 | 久久综合久色欧美综合狠狠 | 精品国产一区二区三区四区vr | 国产一区二区在线影院 | 九九热精品国产 | 午夜视频欧美 | 欧美影片| 9999免费视频| 久久国产精品99久久久久 | 国产精品9999 | 久热爱 | 少妇性aaaaaaaaa视频 | 在线视频a | 91福利视频免费 | 高清不卡免费视频 | 色永久免费视频 | 夜夜嗨av色一区二区不卡 | 狠狠狠狠狠狠天天爱 | 黄色国产在线观看 | 国产韩国日本高清视频 | 国产护士av| 草久在线 | 国产69精品久久app免费版 | 亚洲综合射| 怡红院久久 | 色99视频 | 久草在线免费看视频 | 五月亚洲 | 九九激情视频 | www.玖玖玖| 视频在线精品 | 正在播放国产精品 | 国产成人福利在线观看 | 亚洲精品一区二区三区新线路 | 色视频成人在线观看免 | 国产成人一二三 | 91精品福利在线 | 亚洲国产精品成人综合 | 精品国产精品久久一区免费式 | 亚洲欧美日韩一级 | 97超级碰碰碰碰久久久久 | 91精品国产福利 | 国产在线中文字幕 | 欧美激情视频一区二区三区免费 | 中文字幕免费看 | 婷婷在线免费观看 | 一区二区三区国 | 国产资源网 | 99久久99久久精品免费 | 成人国产综合 | 综合网伊人 | 国产亚洲精品久久久久久移动网络 | 成人一区二区三区在线 | 国色天香永久免费 | 欧美性生活免费 | 欧美一级特黄aaaaaa大片在线观看 | 黄色av一区二区三区 | 精品国产一区二区三区久久久蜜臀 | 西西人体4444www高清视频 | 欧美日韩免费看 | 日韩成年视频 | 91麻豆产精品久久久久久 | 国产精品激情偷乱一区二区∴ | 97av.com| 国产永久免费高清在线观看视频 | 中文字幕91视频 | 一区二区日韩av | 国产精品久久在线观看 | 欧美日韩国产二区三区 | 久久99欧美 | 亚州国产精品视频 | 欧美性猛片| 国产成人一二片 | 日日操日日干 | 色视频在线免费 | 国产精品黄色在线观看 | 亚洲在线免费视频 | 美女很黄免费网站 | 97看片网| 久久久穴 | 三级黄色免费 | 91在线精品观看 | 久久成人国产精品免费软件 | av天天澡天天爽天天av | 色吊丝在线永久观看最新版本 | 在线观看视频一区二区三区 | 中文av一区二区 | 99久久一区 | 亚洲综合欧美精品电影 | 高清免费av在线 | 国产高清永久免费 | 国产最新精品视频 | 一级片免费在线 | 欧美国产在线看 | av网站免费看 | 成人试看120秒 | 中国一级片免费看 | 成人h在线观看 | 精品国产91亚洲一区二区三区www | 久免费视频 | 精品99免费视频 | 欧美日韩国产页 | 国产福利一区在线观看 | 丁香六月在线观看 | 久久开心激情 | 在线视频欧美精品 | 免费久久视频 | 欧美日韩在线观看一区二区三区 | 精品综合久久 | 婷婷在线视频观看 | 国产在线91精品 | 久久香蕉国产精品麻豆粉嫩av | 九九热99视频 | 亚洲国产欧美一区二区三区丁香婷 | 91在线免费观看国产 | 国产视频精品网 | 中文字幕亚洲欧美日韩 | 欧美一二三视频 | 中文字幕亚洲不卡 | 亚洲精品久久久久中文字幕二区 | 欧美久久九九 | 在线精品视频免费播放 | 亚洲视频免费视频 | 91成人天堂久久成人 | 就要干b| av888av.com| 亚洲一区二区三区miaa149 | 欧美日韩在线电影 | 国产福利精品视频 | 2021国产在线 | 91人人澡人人爽人人精品 | 日韩一级片观看 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 伊人久久国产精品 | 日本中文字幕影院 | 久久久九色精品国产一区二区三区 | 国产精品久99 | 狠狠操影视 | 久久艹久久 | 欧美日韩一区二区在线观看 | 欧美精品一区二区在线播放 | 狠狠操天天操 | 91激情视频在线 | 91亚洲狠狠婷婷综合久久久 | 在线看日韩 | 中文字幕电影高清在线观看 | 日本黄色免费网站 | 激情欧美xxxx| 日韩午夜三级 | 看片网站黄 | 日本久久综合网 | 粉嫩av一区二区三区入口 | 二区三区毛片 | 成人播放器 | 日韩中文字幕一区 | 精品国产乱码久久久久久1区二区 | 91av免费在线观看 | 激情五月五月婷婷 | 国产黄色免费观看 | 在线观看日韩精品 | 992tv在线成人免费观看 | 国产精品欧美久久久久无广告 | 国产中文自拍 | 欧美一区二区在线免费观看 | 99re久久精品国产 | 91丨九色丨国产在线 | 97视频免费观看2区 亚洲视屏 | 国产资源免费在线观看 | 亚洲免费在线看 | aaaaaa毛片 | 久久高清毛片 | 欧美怡红院视频 | 国产精品久久久久永久免费 | 夜夜夜草| 国产一区二区在线精品 | 久青草视频 | 日韩最新av| 免费看国产曰批40分钟 | 69精品在线观看 | 日韩系列| 精品视频www | 亚洲综合在线播放 | 色婷婷av国产精品 | 精品国产乱码久久久久久三级人 | 国产九九热 | 伊人五月在线 | 综合五月婷婷 | 激情综合电影网 | 91精品啪在线观看国产81旧版 | 日韩精品一区二区三区水蜜桃 | 99久久999久久久精玫瑰 | 国产小视频在线看 | 日本精品中文字幕 | 丁香花五月| 香蕉网址| 免费看国产一级片 | 久久久久久久国产精品视频 | 草久久久 | 国产一卡二卡四卡国 | 毛片精品免费在线观看 | 青草草在线 | 99久久婷婷国产一区二区三区 | 久久国产乱| 91成人免费在线视频 | 亚州中文av | 五月婷婷综合激情 | 日韩一区二区三 | 亚洲在线a| 国产91精品在线观看 | 九九热在线视频 | 国产成人一区二区三区电影 | 我爱av激情网 | 蜜桃视频在线视频 | 日韩不卡高清视频 | 欧美久草在线 | 中文字幕免费久久 | 成人在线免费小视频 | 天天干天天干天天干天天干天天干天天干 | 热久久免费视频精品 | 国产精品一区二区三区久久久 | 色网免费观看 | 久久呀| 婷婷伊人综合 | 国内综合精品午夜久久资源 | 免费看污污视频的网站 | 久久99久久99精品 | 国产一区 在线播放 | 国产精品区免费视频 | 久草精品视频 | 在线成人小视频 | 日韩三级免费观看 | 91在线精品观看 | 国产日韩欧美视频 | 久久视影 | 成人精品久久久 | 欧美a级成人淫片免费看 | 91在线视频观看免费 | 亚洲va欧洲va国产va不卡 | 黄色网址中文字幕 | 亚洲视频1区2区 | 欧美日韩一区二区三区视频 | 99视频在线观看视频 | 99久久精品免费看国产免费软件 | 尤物九九久久国产精品的分类 | 午夜精品久久久久久中宇69 | 国产精品v欧美精品 | 国产亚洲精品精品精品 | 视频精品一区二区三区 | 亚洲精品97 | 国产96在线 | 一区二区三区日韩视频在线观看 | 久久在现 | 免费观看一区二区三区视频 | 成人在线小视频 | 一区二区三区观看 | 日本aaa在线观看 | 自拍超碰在线 | 久久伦理网 | 91精品国产高清自在线观看 | 国产在线观看免 | 国产精品毛片完整版 | 国产香蕉97碰碰碰视频在线观看 | 日韩一区二区久久 | 黄p网站在线观看 | 天天草天天干天天射 | 中文字幕乱码亚洲精品一区 | 中文字幕一区二区三区久久 | 国产黄色精品 | 亚洲成人av电影 | 日本中文字幕电影在线免费观看 | 国产在线日韩 | 狠狠色丁香婷婷综合久久片 | 中文字幕亚洲国产 | 奇米影视8888在线观看大全免费 | 国产中文字幕在线 | 六月久久婷婷 | 成人毛片100免费观看 | 91插插插网站 | 欧美伦理电影一区二区 | 激情开心| 天天草夜夜 | 国产日韩在线观看一区 | 亚洲成av人影院 | 久久99热这里只有精品国产 | 中文字幕影视 | 天天综合网 天天综合色 | 久艹在线播放 | 国产精品高潮呻吟久久久久 | 在线观看国产日韩 | 六月天色婷婷 | 久爱综合| 99精品乱码国产在线观看 | 在线观看av麻豆 | 五月婷婷综合网 | 久草男人天堂 | 波多野结衣综合网 | 麻豆影视网 | 久久久www成人免费精品 | www.日日日.com| 国产精品一区二区免费在线观看 | 国产精品久久久一区二区 | 999久久a精品合区久久久 | 国产一区二区午夜 | 国产精品18久久久久久久 | 国产精品成人aaaaa网站 | 精品99视频 | 国产精品成人免费一区久久羞羞 | 国产91成人在在线播放 | 一级理论片在线观看 | 久久综合影院 | 欧洲性视频 | 免费看一级黄色大全 | 久久99国产精品二区护士 | 成人精品视频 | 午夜 久久 tv | 国产1区2区3区在线 亚洲自拍偷拍色图 | 国产精品激情偷乱一区二区∴ | 亚洲人av免费网站 | 国产自制av | 色夜视频 | 玖玖视频国产 | 992tv在线| 日韩欧美在线免费 | 99热.com| 日韩精品在线视频 | 国产成人99久久亚洲综合精品 | 日韩一区二区三区高清免费看看 | 国产美女视频免费 | 麻豆成人网 | 操操操日日日干干干 | 免费国产一区二区 | 天天操天天色天天 | 午夜精品久久久久 | 亚洲激情国产精品 | 色在线亚洲 | 精品在线观看一区二区 | 国产精品国产毛片 | 婷婷激情网站 | 久草9视频 | 黄色软件网站在线观看 | 最近的中文字幕大全免费版 | 中文字幕国产精品一区二区 | 亚洲黄色片在线 | 国产成人99av超碰超爽 | 911av视频| 波多野结衣精品视频 | 日日操夜夜操狠狠操 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 91影视成人| av中文字幕剧情 | 欧美最猛性xxxxx亚洲精品 | 黄色影院在线播放 | 久久国产日韩 | 黄色亚洲在线 | 国产美女黄网站免费 | 国产午夜不卡 | 免费视频在线观看网站 | 亚洲最新av在线 | 天天做日日做天天爽视频免费 | 久久人人爽人人爽人人片 | 亚洲精品视频在线观看免费视频 | 香蕉久久国产 | 中文字幕永久 | a在线观看免费视频 | 亚洲精品乱码久久久久久蜜桃动漫 | 亚洲精品在线资源 | 日韩精品一卡 | 国产一区在线精品 | 久草精品视频 | 999久久久国产精品 高清av免费观看 | 97精品在线 | 亚洲一区二区精品视频 | 香蕉国产91 | 波多野结衣精品视频 | 中文字幕国语官网在线视频 | 欧美人牲 | 天天操天天吃 | wwwwww国产| 亚洲日本va午夜在线影院 | 热久久视久久精品18亚洲精品 | av片中文字幕 | 久久精品国产免费看久久精品 | 激情影音 | 久草在线免费播放 | 91热视频 | av中文字幕网站 | 日韩一区二区久久 | 国产精品国产三级国产aⅴ无密码 | 成人av片在线观看 | 狠狠干我 | 色婷婷免费 | 美女视频黄色免费 | 粉嫩aⅴ一区二区三区 | 成人av免费在线播放 | 日韩电影一区二区在线 | 黄色成人av | 成人久久影院 | 中文字幕五区 | 麻豆视频www | 极品美女被弄高潮视频网站 | 久久免费视频6 | 久久久国产网站 | 国产麻豆视频在线观看 | 久久免费视频99 | 最新国产精品亚洲 | 日操操 | 国产精品99久久久久久小说 | 97电影网手机版 | 免费看成人a | 日韩在线视频在线观看 | 国产美女免费视频 | 免费看的国产视频网站 | 深夜国产在线 | 精品久久久久久国产偷窥 | 国产精品第一 | 伊人av综合| 欧美一区成人 | 国产精品一区二区三区视频免费 | 久久艹艹| av电影免费看 | av免费播放 | 亚洲精品456在线播放第一页 | 久草网免费 | 久草精品在线观看 | 成人久久18免费网站图片 | 久久 国产一区 | a在线观看免费视频 | 国产中的精品av小宝探花 | 精品视频免费播放 | 九九精品久久 | 色在线免费视频 | 香蕉精品视频在线观看 | 少妇搡bbbb搡bbb搡忠贞 | 99精品免费在线 | 青青河边草免费 | 免费精品视频在线观看 | 三级黄色欧美 | 婷婷色狠狠 | 精品免费在线视频 | 国产精品久久久网站 | 黄色亚洲精品 | 免费黄a | 人人插人人草 | 国产精品久久久久久久久久免费 | 人人超碰在线 | 欧美二区三区91 | 九九热免费在线视频 | 成人黄色电影免费观看 | 日韩视频免费 | 96久久精品 | 色香蕉视频 | 中文字幕av在线 | 成人网在线免费视频 | 国产99色 | 成人黄色av网站 | 人成午夜视频 | 国产免费亚洲高清 | 久草免费在线观看视频 | 青青河边草观看完整版高清 | 国产一区视频导航 | 亚洲视频综合 | 在线电影日韩 | 97超碰资源 | 午夜久草| 免费av在线播放 | 国产亚州精品视频 | 午夜精品在线看 | 最近日本中文字幕a | av免费网站在线观看 | 成人免费观看在线视频 | 亚洲精品成人av在线 | 免费a级毛片在线看 | 九九热在线视频免费观看 | 天天操狠狠操 | 久久精品一区二区国产 | 九九免费精品视频 | 天天操天天射天天 | 在线播放亚洲 | 在线97 | 久久久久久久久久久高潮一区二区 | 中文字幕精品www乱入免费视频 | 亚洲欧美日韩一区二区三区在线观看 | 91在线精品播放 | 天堂网中文在线 | 国产精品久久久久久久久久 | 久草在线手机视频 | 视频一区二区免费 | 韩日精品在线观看 | 日韩免费电影在线观看 | 婷婷激情五月 | 91视频久久久久久 | 国产精品一区二区三区视频免费 | 亚洲黄色一级大片 | 五月天综合激情网 | 国产永久免费观看 | 伊人狠狠 | 黄色av成人在线 | 69av免费视频 | 国产片网站 | 久久久久久久精 | 中文字幕av一区二区三区四区 |