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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

atomikos JTA/XA全局事务

發布時間:2024/3/24 编程问答 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 atomikos JTA/XA全局事务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Atomikos公司官方網址為:https://www.atomikos.com/。其旗下最著名的產品就是事務管理器。產品分兩個版本:

TransactionEssentials:開源的免費產品

ExtremeTransactions:上商業版,需要收費。

這兩個產品的關系如下圖所示:?

TransactionEssentials:

1、實現了JTA/XA規范中的事務管理器(Transaction Manager)應該實現的相關接口,如:

?? ?UserTransaction實現是com.atomikos.icatch.jta.UserTransactionImp,用戶只需要直接操作這個類

?? ?TransactionManager實現是com.atomikos.icatch.jta.UserTransactionManager

?? ?Transaction實現是com.atomikos.icatch.jta.TransactionImp

2、針對實現了JDBC規范中規定的實現了XADataSource接口的數據庫連接池,以及實現了JMS規范的MQ客戶端提供一層封裝。

? ? ?在上一節我們講解JTA規范時,提到過XADataSource、XAConnection等接口應該由資源管理器RM來實現,而Atomikos的作用是一個事務管理器(TM),并不需要提供對應的實現。而Atomikos對XADataSource進行封裝,只是為了方便與事務管理器整合。封裝XADataSource的實現類為AtomikosDataSourceBean。典型的XADataSource實現包括:

? ? 1、mysql官方提供的com.mysql.jdbc.jdbc2.optional.MysqlXADataSource

? ? 2、阿里巴巴開源的druid連接池,對應的實現類為com.alibaba.druid.pool.xa.DruidXADataSource

? ? 3、tomcat-jdbc連接池提供的org.apache.tomcat.jdbc.pool.XADataSource

? ? 而其他一些常用的數據庫連接池,如dbcp、dbcp2或者c3p0,目前貌似尚未提供XADataSource接口的實現。如果提供給AtomikosDataSourceBean一個沒有實現XADataSource接口的數據源,如c3p0的ComboPooledDataSource,則會拋出類似以下異常:?

  • com.atomikos.jdbc.AtomikosSQLException:?The?class?'com.mchange.v2.c3p0.ComboPooledDataSource'
  • ?specified?by?property?'xaDataSourceClassName'?does?not?implement?the?required?interface??
  • ?javax.jdbc.XADataSource.??
  • ?Please?make?sure?the?spelling?is?correct,?and?check?your?JDBC?driver?vendor's?documentation.
  • ? ?

    ExtremeTransactions在TransactionEssentials的基礎上額外提供了以下功能:

    支持TCC:這是一種柔性事務

    支持通過RMI、IIOP、SOAP這些遠程過程調用技術,進行事務傳播。

    本文主要針對Atomikos開源版本的事務管理器實現TransactionEssentials進行講解,包括:

    1、直接使用TransactionEssentials的API

    2、TransactionEssentials與spring、mybatis整合

    3、Atomikos配置詳解

    ?

    直接使用TransactionEssentials的API

    在maven項目的pom文件中引入以下依賴:

  • <dependency>
  • ????<groupId>com.atomikos</groupId>
  • ????<artifactId>transactions-jdbc</artifactId>
  • ????<version>4.0.6</version>
  • </dependency>
  • <dependency>
  • ????<groupId>mysql</groupId>
  • ????<artifactId>mysql-connector-java</artifactId>
  • ????<version>5.1.39</version>
  • </dependency>
  • 新建mysql數據庫表

    需要注意的是,在mysql中,只有innodb引擎才支持XA事務,所以這里顯式的指定了數據庫引擎為innodb。

  • --?新建數據庫db_user;
  • create?database?db_user;
  • --?在db_user庫中新建user表
  • create?table?db_user.user(id?int?AUTO_INCREMENT?PRIMARY?KEY,name?varchar(50))?engine=innodb;
  • --?新建數據庫db_account;
  • create?database?db_account;
  • --?在db_account庫中新建account表
  • create?table?db_account.account(user_id?int,money?double)?engine=innodb;
  • 另外,在本案例中,db_user庫和db_account庫是位于同一個mysql實例中的。?

    ? ? ? ?

    案例代碼:

    ?? ?在使用了事務管理器之后,我們通過atomikos提供的UserTransaction接口的實現類com.atomikos.icatch.jta.UserTransactionImp來開啟、提交和回滾事務。而不再是使用java.sql.Connection中的setAutoCommit(false)的方式來開啟事務。其他JTA規范中定義的接口,開發人員并不需要直接使用。?

  • import?com.atomikos.icatch.jta.UserTransactionImp;
  • import?com.atomikos.jdbc.AtomikosDataSourceBean;
  • ?
  • import?javax.transaction.SystemException;
  • import?javax.transaction.UserTransaction;
  • import?java.sql.Connection;
  • import?java.sql.PreparedStatement;
  • import?java.sql.ResultSet;
  • import?java.sql.Statement;
  • import?java.util.Properties;
  • ?
  • public?class?AtomikosExample?{
  • ?
  • ???private?static?AtomikosDataSourceBean?createAtomikosDataSourceBean(String?dbName)?{
  • ??????//?連接池基本屬性
  • ??????Properties?p?=?new?Properties();
  • ??????p.setProperty("url",?"jdbc:mysql://localhost:3306/"?+?dbName);
  • ??????p.setProperty("user",?"root");
  • ??????p.setProperty("password",?"your?password");
  • ?
  • ??????//?使用AtomikosDataSourceBean封裝com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
  • ??????AtomikosDataSourceBean?ds?=?new?AtomikosDataSourceBean();
  • ??????//atomikos要求為每個AtomikosDataSourceBean名稱,為了方便記憶,這里設置為和dbName相同
  • ??????ds.setUniqueResourceName(dbName);
  • ??????ds.setXaDataSourceClassName("com.mysql.jdbc.jdbc2.optional.MysqlXADataSource");
  • ??????ds.setXaProperties(p);
  • ??????return?ds;
  • ???}
  • ?
  • ???public?static?void?main(String[]?args)?{
  • ?
  • ??????AtomikosDataSourceBean?ds1?=?createAtomikosDataSourceBean("db_user");
  • ??????AtomikosDataSourceBean?ds2?=?createAtomikosDataSourceBean("db_account");
  • ?
  • ??????Connection?conn1?=?null;
  • ??????Connection?conn2?=?null;
  • ??????PreparedStatement?ps1?=?null;
  • ??????PreparedStatement?ps2?=?null;
  • ?
  • ??????UserTransaction?userTransaction?=?new?UserTransactionImp();
  • ??????try?{
  • ?????????//?開啟事務
  • ?????????userTransaction.begin();
  • ?
  • ?????????//?執行db1上的sql
  • ?????????conn1?=?ds1.getConnection();
  • ?????????ps1?=?conn1.prepareStatement("INSERT?into?user(name)?VALUES?(?)",?Statement.RETURN_GENERATED_KEYS);
  • ?????????ps1.setString(1,?"tianshouzhi");
  • ?????????ps1.executeUpdate();
  • ?????????ResultSet?generatedKeys?=?ps1.getGeneratedKeys();
  • ?????????int?userId?=?-1;
  • ?????????while?(generatedKeys.next())?{
  • ????????????userId?=?generatedKeys.getInt(1);//?獲得自動生成的userId
  • ?????????}
  • ?
  • ?????????//?模擬異常?,直接進入catch代碼塊,2個都不會提交
  • //????????int?i=1/0;
  • ?
  • ?????????//?執行db2上的sql
  • ?????????conn2?=?ds2.getConnection();
  • ?????????ps2?=?conn2.prepareStatement("INSERT?into?account(user_id,money)?VALUES?(?,?)");
  • ?????????ps2.setInt(1,?userId);
  • ?????????ps2.setDouble(2,?10000000);
  • ?????????ps2.executeUpdate();
  • ?
  • ?????????//?兩階段提交
  • ?????????userTransaction.commit();
  • ??????}?catch?(Exception?e)?{
  • ?????????try?{
  • ????????????e.printStackTrace();
  • ????????????userTransaction.rollback();
  • ?????????}?catch?(SystemException?e1)?{
  • ????????????e1.printStackTrace();
  • ?????????}
  • ??????}?finally?{
  • ?????????try?{
  • ????????????ps1.close();
  • ????????????ps2.close();
  • ????????????conn1.close();
  • ????????????conn2.close();
  • ????????????ds1.close();
  • ????????????ds2.close();
  • ?????????}?catch?(Exception?ignore)?{
  • ?????????}
  • ??????}
  • ???}
  • }
  • 2、TransactionEssentials與spring、mybatis整合

    在pom中添加以下依賴?

  • <dependency>
  • ????<groupId>org.springframework</groupId>
  • ????<artifactId>spring-jdbc</artifactId>
  • ????<version>4.3.7.RELEASE</version>
  • </dependency>
  • <dependency>
  • ????<groupId>org.springframework</groupId>
  • ????<artifactId>spring-context</artifactId>
  • ????<version>4.3.7.RELEASE</version>
  • </dependency>
  • <dependency>
  • ????<groupId>org.mybatis</groupId>
  • ????<artifactId>mybatis</artifactId>
  • ????<version>3.4.1</version>
  • </dependency>
  • <dependency>
  • ????<groupId>org.mybatis</groupId>
  • ????<artifactId>mybatis-spring</artifactId>
  • ????<version>1.3.1</version>
  • </dependency>
  • 新建User實體

  • package?com.tianshouzhi.atomikos;
  • public?class?User?{
  • ???private?int?id;
  • ???private?String?name;
  • ???//?setters?and?getters
  • }
  • 新建Account實例

  • package?com.tianshouzhi.atomikos;
  • public?class?Account?{
  • ???private?int?userId;
  • ???private?double?money;
  • ???//?setters?and?getters
  • }
  • 新建UserMapper接口,為了方便,這里使用了mybatis 注解方式,沒有編寫映射文件,作用是一樣的

  • package?com.tianshouzhi.atomikos.mappers.db_user;
  • import?org.apache.ibatis.annotations.Insert;
  • import?com.tianshouzhi.atomikos.User;
  • import?org.apache.ibatis.annotations.Options;
  • public?interface?UserMapper?{
  • ???@Insert("INSERT?INTO?user(id,name)?VALUES(#{id},#{name})")
  • ???@Options(useGeneratedKeys?=?true,?keyColumn?=?"id",?keyProperty?=?"id")
  • ???public?void?insert(User?user);
  • }
  • 新建AccountMapper接口

  • package?com.tianshouzhi.atomikos.mappers.ds_account;
  • import?com.tianshouzhi.atomikos.Account;
  • import?org.apache.ibatis.annotations.Insert;
  • public?interface?AccountMapper?{
  • ????@Insert("INSERT?INTO?account(user_id,money)?VALUES(#{userId},#{money})")
  • ????public?void?insert(Account?account);
  • }
  • 新建使用JTA事務的bean,注意在使用jta事務的時候,依然可以使用spring的聲明式事務管理

  • package?com.tianshouzhi.atomikos;
  • import?com.tianshouzhi.atomikos.mappers.db_user.UserMapper;
  • import?com.tianshouzhi.atomikos.mappers.ds_account.AccountMapper;
  • import?org.springframework.beans.factory.annotation.Autowired;
  • import?org.springframework.transaction.annotation.Transactional;
  • public?class?JTAService?{
  • ???@Autowired
  • ???private?UserMapper?userMapper;//操作db_user庫
  • ???@Autowired
  • ???private?AccountMapper?accountMapper;//操作db_account庫
  • ???@Transactional
  • ???public?void?insert()?{
  • ??????User?user?=?new?User();
  • ??????user.setName("wangxiaoxiao");
  • ??????userMapper.insert(user);
  • ???????
  • ??????//????int?i?=?1?/?0;//模擬異常,spring回滾后,db_user庫中user表中也不會插入記錄
  • ??????Account?account?=?new?Account();
  • ??????account.setUserId(user.getId());
  • ??????account.setMoney(123456789);
  • ??????accountMapper.insert(account);
  • ???}
  • }
  • 編寫配置文件spring-atomikos.xml

  • <?xml?version="1.0"?encoding="UTF-8"?>
  • <beans?xmlns="http://www.springframework.org/schema/beans"
  • ???????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"?xmlns:tx="http://www.springframework.org/schema/tx"
  • ???????xsi:schemaLocation="http://www.springframework.org/schema/beans?http://www.springframework.org/schema/beans/spring-beans.xsd
  • ???????http://www.springframework.org/schema/tx?http://www.springframework.org/schema/tx/spring-tx.xsd">
  • ?
  • ?
  • ????<!--==========針對兩個庫,各配置一個AtomikosDataSourceBean,底層都使用MysqlXADataSource=====================-->
  • ????<!--配置數據源db_user-->
  • ????<bean?id="db_user"?class="com.atomikos.jdbc.AtomikosDataSourceBean"
  • ??????????init-method="init"?destroy-method="close">
  • ????????<property?name="uniqueResourceName"?value="ds1"?/>
  • ????????<property?name="xaDataSourceClassName"
  • ??????????????????value="com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"?/>
  • ????????<property?name="xaProperties">
  • ????????????<props>
  • ????????????????<prop?key="url">jdbc:mysql://localhost:3306/db_user</prop>
  • ????????????????<prop?key="user">root</prop>
  • ????????????????<prop?key="password">shxx12151022</prop>
  • ????????????</props>
  • ????????</property>
  • ????</bean>
  • ?
  • ????<!--配置數據源db_account-->
  • ????<bean?id="db_account"?class="com.atomikos.jdbc.AtomikosDataSourceBean"
  • ??????????init-method="init"?destroy-method="close">
  • ????????<property?name="uniqueResourceName"?value="ds2"?/>
  • ????????<property?name="xaDataSourceClassName"
  • ??????????????????value="com.mysql.jdbc.jdbc2.optional.MysqlXADataSource"?/>
  • ????????<property?name="xaProperties">
  • ????????????<props>
  • ????????????????<prop?key="url">jdbc:mysql://localhost:3306/db_account</prop>
  • ????????????????<prop?key="user">root</prop>
  • ????????????????<prop?key="password">shxx12151022</prop>
  • ????????????</props>
  • ????????</property>
  • ????</bean>
  • ?
  • ????<!--=============針對兩個數據源,各配置一個SqlSessionFactoryBean============?-->
  • ????<bean?id="ssf_user"?class="org.mybatis.spring.SqlSessionFactoryBean">
  • ????????<property?name="dataSource"?ref="db_user"?/>
  • ????</bean>
  • ?
  • ????<bean?id="ssf_account"?class="org.mybatis.spring.SqlSessionFactoryBean">
  • ????????<property?name="dataSource"?ref="db_account"?/>
  • ????</bean>
  • ?
  • ????<!--=============針對兩個SqlSessionFactoryBean,各配置一個MapperScannerConfigurer============?-->
  • ????<bean?class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  • ????????<property?name="sqlSessionFactoryBeanName"?value="ssf_user"/>
  • ????????<!--指定com.tianshouzhi.atomikos.mappers.db_user包下的UserMapper接口使用ssf_user獲取底層數據庫連接-->
  • ????????<property?name="basePackage"?value="com.tianshouzhi.atomikos.mappers.db_user"/>
  • ????</bean>
  • ?
  • ????<bean?class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  • ????????<property?name="sqlSessionFactoryBeanName"?value="ssf_account"/>
  • ????????<!--指定com.tianshouzhi.atomikos.mappers.ds_account包下的AccountMapper接口使用ssf_account獲取底層數據庫連接-->
  • ????????<property?name="basePackage"?value="com.tianshouzhi.atomikos.mappers.ds_account"/>
  • ????</bean>
  • ?
  • ????<!--================配置atomikos事務管理器========================-->
  • ????<bean?id="atomikosTransactionManager"?class="com.atomikos.icatch.jta.UserTransactionManager"?init-method="init"
  • ??????????destroy-method="close">
  • ????????<property?name="forceShutdown"?value="false"/>
  • ????</bean>
  • ?
  • ????<!--============配置spring的JtaTransactionManager,底層委派給atomikos進行處理===============-->
  • ????<bean?id="jtaTransactionManager"?class="org.springframework.transaction.jta.JtaTransactionManager">
  • ????????<property?name="transactionManager"?ref="atomikosTransactionManager"/>
  • ????</bean>
  • ?
  • ????<!--配置spring聲明式事務管理器-->
  • ????<tx:annotation-driven?transaction-manager="jtaTransactionManager"/>
  • ?
  • ????<bean?id="jtaService"?class="com.tianshouzhi.atomikos.JTAService"/>
  • </beans>
  • 測試代碼

  • package?com.tianshouzhi.atomikos;
  • ?
  • import?org.springframework.context.ApplicationContext;
  • import?org.springframework.context.support.ClassPathXmlApplicationContext;
  • ?
  • public?class?AtomikosSpringMybatisExample?{
  • ???public?static?void?main(String[]?args)?{
  • ??????ApplicationContext?context?=?new?ClassPathXmlApplicationContext("spring-atomikos.xml");
  • ??????JTAService?jtaService?=?context.getBean("jtaService",?JTAService.class);
  • ??????jtaService.insert();
  • ???}
  • }
  • ????建議讀者先直接按照上述代碼運行,以確定代碼執行后,db_user庫的user表和db_account的account表中的確各插入了一條記錄,以證明我們的代碼的確是操作了2個庫,屬于分布式事務。

    ?? ?然后將JTAService中的異常模擬的注釋打開,會發現出現異常后,兩個庫中都沒有新插入的數據庫,說明我們使用的JTA事務管理器的確保證數據的一致性了。

    Atomikos配置

    ?? ?在掌握了Atomikos基本使用之后,我們對Atomikos的配置進行一下簡單的介紹。Atomikos在啟動后,默認會從以下幾個位置讀取配置文件,這里筆者直接貼出atomikos源碼進行說明:

    com.atomikos.icatch.provider.imp.AssemblerImp#initializeProperties方法中定義了配置加載順序邏輯:?

  • @Override
  • ????public?ConfigProperties?initializeProperties()?{
  • ????????//讀取classpath下的默認配置transactions-defaults.properties
  • ????????Properties?defaults?=?new?Properties();
  • ????????loadPropertiesFromClasspath(defaults,?DEFAULT_PROPERTIES_FILE_NAME);
  • ????????//讀取classpath下,transactions.properties配置,覆蓋transactions-defaults.properties中相同key的值
  • ????????Properties?transactionsProperties?=?new?Properties(defaults);
  • ????????loadPropertiesFromClasspath(transactionsProperties,?TRANSACTIONS_PROPERTIES_FILE_NAME);
  • ????????//讀取classpath下,jta.properties,覆蓋transactions-defaults.properties、transactions.properties中相同key的值
  • ????????Properties?jtaProperties?=?new?Properties(transactionsProperties);
  • ????????loadPropertiesFromClasspath(jtaProperties,?JTA_PROPERTIES_FILE_NAME);
  • ????????
  • ????????//讀取通過java?-Dcom.atomikos.icatch.file方式指定的自定義配置文件路徑,覆蓋之前的同名配置
  • ????????Properties?customProperties?=?new?Properties(jtaProperties);
  • ????????loadPropertiesFromCustomFilePath(customProperties);
  • ????????//最終構造一個ConfigProperties對象,來表示實際要使用的配置
  • ????????Properties?finalProperties?=?new?Properties(customProperties);
  • ????????return?new?ConfigProperties(finalProperties);
  • ????}
  • 配置文件優先級:transactions-defaults.properties<transactions.properties<jta.properties<自定義配置文件路徑,后面的配置會覆蓋之前同名key的配置。

    其中transactions-defaults.properties是atomikos自帶的默認配置,位于transactions-xxx.jar中.

    注意不同版本的默認配置可能不同。特別是3.x版本和4.x版本的差異比較明顯。 ??

    以下是4.0.6中 transactions-default.properties中配置內容,筆者對這些配置進行了歸類,如下:?

  • ===============================================================
  • ============??????????事務管理器(TM)配置參數???????==============
  • ===============================================================
  • #指定是否啟動磁盤日志,默認為true。在生產環境下一定要保證為true,否則數據的完整性無法保證
  • com.atomikos.icatch.enable_logging=true
  • #JTA/XA資源是否應該自動注冊
  • com.atomikos.icatch.automatic_resource_registration=true
  • #JTA事務的默認超時時間,默認為10000ms
  • com.atomikos.icatch.default_jta_timeout=10000
  • #事務的最大超時時間,默認為300000ms。這表示事務超時時間由?UserTransaction.setTransactionTimeout()較大者決定。4.x版本之后,指定為0的話則表示不設置超時時間
  • com.atomikos.icatch.max_timeout=300000
  • #指定在兩階段提交時,是否使用不同的線程(意味著并行)。3.7版本之后默認為false,更早的版本默認為true。如果為false,則提交將按照事務中訪問資源的順序進行。
  • com.atomikos.icatch.threaded_2pc=false
  • #指定最多可以同時運行的事務數量,默認值為50,負數表示沒有數量限制。在調用?UserTransaction.begin()方法時,可能會拋出一個”Max?number?of?active?transactions?reached”異常信息,表示超出最大事務數限制
  • com.atomikos.icatch.max_actives=50
  • #是否支持subtransaction,默認為true
  • com.atomikos.icatch.allow_subtransactions=true
  • #指定在可能的情況下,否應該join?子事務(subtransactions),默認值為true。如果設置為false,對于有關聯的不同subtransactions,不會調用XAResource.start(TM_JOIN)
  • com.atomikos.icatch.serial_jta_transactions=true
  • #指定JVM關閉時是否強制(force)關閉事務管理器,默認為false
  • com.atomikos.icatch.force_shutdown_on_vm_exit=false
  • #在正常關閉(no-force)的情況下,應該等待事務執行完成的時間,默認為Long.MAX_VALUE
  • com.atomikos.icatch.default_max_wait_time_on_shutdown=9223372036854775807
  • ?
  • ===============================================================
  • =========????????事務日志(Transaction?logs)記錄配置???????=======
  • ===============================================================
  • #事務日志目錄,默認為./。
  • com.atomikos.icatch.log_base_dir=./
  • #事務日志文件前綴,默認為tmlog。事務日志存儲在文件中,文件名包含一個數字后綴,日志文件以.log為擴展名,如tmlog1.log。遇到checkpoint時,新的事務日志文件會被創建,數字增加。
  • com.atomikos.icatch.log_base_name=tmlog
  • #指定兩次checkpoint的時間間隔,默認為500
  • com.atomikos.icatch.checkpoint_interval=500
  • ?
  • ===============================================================
  • =========??????????事務日志恢復(Recovery)配置???????=============
  • ===============================================================
  • #指定在多長時間后可以清空無法恢復的事務日志(orphaned),默認86400000ms
  • com.atomikos.icatch.forget_orphaned_log_entries_delay=86400000
  • #指定兩次恢復掃描之間的延遲時間。默認值為與com.atomikos.icatch.default_jta_timeout相同
  • com.atomikos.icatch.recovery_delay=${com.atomikos.icatch.default_jta_timeout}
  • #提交失敗時,再拋出一個異常之前,最多可以重試幾次,默認值為5
  • com.atomikos.icatch.oltp_max_retries=5
  • #提交失敗時,每次重試的時間間隔,默認10000ms
  • com.atomikos.icatch.oltp_retry_interval=10000
  • ?
  • ===============================================================
  • =========??????????其他???????===============================?==
  • ===============================================================
  • java.naming.factory.initial=com.sun.jndi.rmi.registry.RegistryContextFactory
  • com.atomikos.icatch.client_demarcation=false
  • java.naming.provider.url=rmi://localhost:1099
  • com.atomikos.icatch.rmi_export_class=none
  • com.atomikos.icatch.trust_client_tm=false
  • 當我們想對默認的配置進行修改時,可以在classpath下新建一個jta.properties,覆蓋同名的配置項即可。

    關于不同版本配置的差異,請參考官方文檔:https://www.atomikos.com/Documentation/JtaProperties

    打印日志

    4.x版本之后,優先嘗試使用slf4j,如果沒有則嘗試使用log4j,如果二者都沒有,則使用JUL。

    參見:https://www.atomikos.com/Documentation/ConfiguringTheLogs

    注意這里是說的是如何配置打印工作日志(work log),而前面說的是事務日志(transactions log),二者不是不同的。

    總結

    以上是生活随笔為你收集整理的atomikos JTA/XA全局事务的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    av电影一区二区三区 | 亚洲一级影院 | 国产人成免费视频 | 在线观av | 鲁一鲁影院 | 成人黄色毛片视频 | 亚洲播放一区 | 国产视频网站在线观看 | 精品黄色在线 | 视频一区二区在线观看 | 人人爽人人爽人人爽学生一级 | 成人久久网 | 六月激情久久 | 最近中文字幕免费 | 免费国产一区二区 | 久久久免费网站 | 欧美aaa大片 | 日韩无在线 | 日日碰夜夜爽 | 人人爱人人射 | 国产午夜精品久久久久久久久久 | 最近中文字幕免费大全 | 亚洲精品国产精品乱码不99热 | 国产一区二区网址 | 国产成人免费av电影 | 综合铜03 | 人人爽久久涩噜噜噜网站 | 国产在线观看中文字幕 | 色就色,综合激情 | 国产视频久久久久 | 91色国产在线 | 亚洲年轻女教师毛茸茸 | 在线三级播放 | 亚洲电影第一页av | 国产精品免费麻豆入口 | 很黄很污的视频网站 | 国产精品一区二区三区免费视频 | 国产一级91 | av国产网站| 亚洲精品视频在线观看免费视频 | 色激情在线 | 五月亚洲婷婷 | 国产尤物在线视频 | 亚洲欧美精品一区 | 国产精品99久久久久的智能播放 | 91综合久久一区二区 | 国产高清免费 | 国产小视频免费在线观看 | 精品国产福利在线 | 国产成人在线看 | 久久精品激情 | 四虎8848免费高清在线观看 | 丁香婷婷久久 | 综合伊人久久 | 欧美日韩国产二区 | 视频在线国产 | 色综合久久久久久久久五月 | 国产精品一区二区av日韩在线 | 青青草国产精品视频 | 精品免费观看 | 中文字幕在线视频第一页 | 麻豆国产精品永久免费视频 | 黄色一级免费 | 久久1区 | 色网站中文字幕 | 最近更新好看的中文字幕 | 91九色国产蝌蚪 | 视频在线观看99 | 免费在线观看午夜视频 | 久久理论影院 | 久久观看| 91麻豆视频| 69精品在线观看 | 色播激情五月 | 久久不卡免费视频 | 国产一区二区日本 | 成年人在线播放视频 | 色五婷婷 | 免费在线观看不卡av | 天天操天天爽天天干 | 亚洲另类在线视频 | 色婷婷综合久久久久 | 中文在线中文a | 国产精品美女视频网站 | 国产又粗又猛又色又黄网站 | 国产精品久久影院 | 综合色播| 中文av资源站| 久久国产精品免费 | 人人添人人澡人人澡人人人爽 | 天天爱天天射天天干天天 | 日日夜夜操操 | 99精品国产一区二区三区不卡 | 日韩精品五月天 | 色欧美成人精品a∨在线观看 | 精品国产午夜 | 最新的av网站 | 免费黄色在线网址 | 精品女同一区二区三区在线观看 | 精品嫩模福利一区二区蜜臀 | 欧美大香线蕉线伊人久久 | 日韩激情网| 日本黄网站 | 在线观看亚洲 | 福利视频导航网址 | 正在播放日韩 | 日韩精品视频在线免费观看 | 人人爽久久涩噜噜噜网站 | 色婷婷免费视频 | 九九精品久久久 | 国产精品午夜在线观看 | 五月天激情视频 | 成人综合婷婷国产精品久久免费 | 亚州国产精品视频 | 亚洲男人天堂2018 | 国产在线超碰 | 日韩av午夜在线观看 | 免费黄色特级片 | 久久精品视频在线观看 | 少妇搡bbbb搡bbb搡69 | 五月婷婷欧美视频 | 九九视频网站 | 国产精品久久久久久久7电影 | av在线永久免费观看 | 国产精品视频内 | 在线国产日本 | 日本中文字幕网址 | 国产精品免费久久久久久久久久中文 | 日韩理论片在线观看 | 日韩伦理片一区二区三区 | 国产精品99久久久久久宅男 | 91亚洲精品久久久中文字幕 | 欧美激情精品久久久久 | 久久男人中文字幕资源站 | 日韩一区二区三区高清免费看看 | 青草视频在线看 | 久久区二区 | 日本中文字幕电影在线免费观看 | 99热只有精品在线观看 | 成人久久久久久久久久 | 国产五月天婷婷 | 久久久午夜精品理论片中文字幕 | 高潮久久久久久久久 | 狠狠色丁香 | 国产精品免费小视频 | 亚洲精品国产综合99久久夜夜嗨 | 91手机视频在线 | 久草网首页 | 成人免费看片网址 | 国产999精品久久久久久绿帽 | 国产成人久久精品77777综合 | 日韩a在线播放 | 国产亚洲一区二区三区 | 精品视频成人 | 97福利社| 久久好看免费视频 | 国产一区二区久久 | 国产韩国日本高清视频 | 亚洲,国产成人av | 欧美日韩免费观看一区二区三区 | 91中文字幕在线视频 | 黄色三级视频片 | 天天射天天操天天干 | 日日干网址| 91丨九色丨国产女 | 日韩精品一区二区三区在线播放 | 精品久久久影院 | 国产高清视频在线观看 | 在线看国产日韩 | 91国内产香蕉| 久久国产女人 | 毛片网站在线看 | 国产999精品久久久久久 | 手机在线黄色网址 | 中文字幕网站视频在线 | 丝袜美女在线观看 | 中文字幕 91| 久久这里有精品 | aⅴ精品av导航 | 天天射狠狠干 | 久久久久区 | 久久久网页| 久久黄视频 | 色wwwww| 亚洲精品视频免费看 | 国产精品一区在线播放 | 国产黄在线| 国产一区视频在线播放 | 亚洲va欧美va人人爽春色影视 | 激情黄色av | 国产精品一区二区三区视频免费 | 久久综合久久88 | 在线va视频 | 一二三久久久 | 激情网站 | 日韩av高清在线观看 | 久久综合影音 | 最近2019年日本中文免费字幕 | 日本黄色大片免费 | 国产精品久久久久久久久久久免费看 | 亚洲精品视频在线观看免费视频 | 91视频在线观看下载 | 2023国产精品自产拍在线观看 | 久久99精品久久久久久清纯直播 | 手机看片久久 | 999免费视频 | 伊人五月综合 | 色婷婷97| 成人av视屏 | 日本99精品 | 中文成人字幕 | 国产精品免费视频观看 | 久久经典国产视频 | 精品网站999www | 国产日产欧美在线观看 | 精品国产伦一区二区三区免费 | 久久一级电影 | 精品96久久久久久中文字幕无 | av千婊在线免费观看 | 亚洲精品免费视频 | 免费视频国产 | 五月天激情开心 | 黄色国产高清 | 成 人 黄 色 视频播放1 | 日韩精品久久一区二区 | 人人射人人插 | 992tv在线成人免费观看 | 成年人网站免费在线观看 | 激情综合网婷婷 | 亚洲欧洲中文日韩久久av乱码 | 免费日韩精品 | 日韩电影中文字幕在线 | 中文字幕在线观看视频网站 | 97在线视频观看 | .国产精品成人自产拍在线观看6 | 免费久草视频 | 中文字幕五区 | 国产精品黄色在线观看 | 成人黄色在线 | 欧美在线a视频 | 国产成人在线观看 | 国产又粗又猛又爽又黄的视频免费 | 久久综合网色—综合色88 | 国产精品色婷婷 | 91精品小视频 | 五月婷婷爱 | 成人免费一区二区三区在线观看 | 免费亚洲电影 | 久久久久久久久久网站 | 免费看毛片在线 | 欧美日韩在线播放 | 在线国产日韩 | 999国内精品永久免费视频 | 成人全视频免费观看在线看 | 亚洲精品国产精品国自产观看 | 精品免费视频 | 国产精品福利av | 天天干天天干天天干天天干天天干天天干 | 男女男视频| 欧美巨大荫蒂茸毛毛人妖 | 国产精品免费观看网站 | 国产精品久久久久久久久久新婚 | 婷婷色婷婷 | 中文字幕国产视频 | 色在线高清 | 国产成人三级一区二区在线观看一 | 国产香蕉视频在线观看 | 久久久久福利视频 | 久久xx视频 | 欧美做受69 | 日韩欧美久久 | 欧美精品二区 | 精品国产一区二区三区男人吃奶 | 97中文字幕 | 久久黄色成人 | 国精产品999国精产 久久久久 | 999久久久欧美日韩黑人 | 天天天色综合a | 久艹在线观看视频 | 992tv人人草| 久操视频在线 | 欧美男女爱爱视频 | 日本黄色免费电影网站 | 国产在线欧美在线 | 娇妻呻吟一区二区三区 | 久久你懂的 | 麻豆久久久久久久 | 欧美视频日韩视频 | 天天插狠狠插 | 日韩av看片 | 色在线最新 | 91精品国产91久久久久久三级 | 五月婷婷一区二区三区 | 黄色小说在线免费观看 | 久久视了 | 久久免费的视频 | 在线日本v二区不卡 | 最新av网址在线观看 | 国产尤物视频在线 | 91av中文字幕 | 久久综合九色 | 国产最新91 | 中文字幕精品一区二区精品 | 国产精品麻豆欧美日韩ww | 91在线国内视频 | 欧美狠狠色 | 亚洲精品资源在线观看 | 成人啊 v | 最近日本mv字幕免费观看 | 成年人电影免费在线观看 | 国精产品999国精产品岳 | 久久国产精品久久久久 | 欧美日产一区 | 最新国产视频 | 亚洲精品免费在线观看 | 激情丁香在线 | 欧美一级片在线观看视频 | 国产色视频网站 | 欧美在线观看禁18 | 成人午夜电影在线观看 | 久久伊人热 | 91精品国产自产老师啪 | 久久成年人视频 | 色婷婷综合视频在线观看 | 亚洲精品在线观看不卡 | 久久久久久久久久影院 | 91免费日韩 | 国产在线观看你懂的 | 2017狠狠干| 久久久久久综合网天天 | 欧美精品久久久 | 西西444www大胆高清图片 | 国产91亚洲精品 | 日韩一二三| 中文字幕一区二区三区视频 | 欧美成人h版在线观看 | 精品免费视频 | 三级小视频在线观看 | 欧美一区二区三区不卡 | 久久永久免费视频 | 一区二区三区在线观看免费视频 | 久久成人欧美 | 在线观看视频免费播放 | 在线日韩亚洲 | 免费的国产精品 | 亚洲精品自拍 | 国产成人亚洲在线观看 | 成人高清在线 | 欧美日韩午夜 | 四虎亚洲精品 | 国产福利小视频在线 | 天天干天天干天天色 | 成人四虎影院 | 国产精品精品国产 | 日韩久久精品一区二区三区 | 欧美a在线免费观看 | 一本一道久久a久久精品 | av大片网站 | 国产一区二区在线视频观看 | 亚洲美女视频在线观看 | 91视频com | 久久超碰在线 | 黄色毛片在线观看 | 国产日韩精品一区二区三区在线 | 久久草在线精品 | av天天色| 国产一区二区久久精品 | 中文字幕.av.在线 | 成人国产一区 | 久久99国产精品自在自在app | 五月婷婷丁香色 | 久久国产精品区 | 黄色大片中国 | 午夜在线资源 | 91网在线 | 国内精品视频免费 | 免费情缘| 日韩免费在线观看网站 | 亚洲国产网站 | 日韩91av| 97超碰在线资源 | 久久看片 | 国产精品久久久久aaaa九色 | a√天堂中文在线 | 久久精品伊人 | 亚洲综合网站在线观看 | 亚洲精品久久久久中文字幕二区 | 国产亚洲视频在线观看 | 一二三四精品 | 五月综合激情 | 天天爽夜夜爽人人爽曰av | 久久精品8| 看av免费 | 三级视频日韩 | 探花在线观看 | 色婷婷激情电影 | 欧美性黑人 | 免费观看91 | 97视频资源 | av 在线观看 | 婷婷综合 | 一区二区精品在线观看 | 黄视频色网站 | 国产亚洲欧美精品久久久久久 | 尤物一区二区三区 | 欧美日韩p片 | 午夜精品久久久久久久爽 | 懂色av一区二区在线播放 | 国产乱视频 | 日韩手机在线观看 | 国产精品v欧美精品v日韩 | 最近中文字幕在线 | 久久高清国产视频 | 精品国产欧美一区二区三区不卡 | 9999国产| 亚洲最大av | 超碰在线1 | 高清在线观看av | 97电影在线观看 | 香蕉网站在线观看 | 日韩av免费一区二区 | 99精品在线播放 | 免费美女av | 免费av在 | 久草在线免费看视频 | 国产精品中文字幕在线 | 国内少妇自拍视频一区 | 香蕉在线观看视频 | 欧美另类z0zx| 久久精品小视频 | 亚洲日本韩国一区二区 | 午夜视频99 | 国产精品免费观看久久 | 91精品国产亚洲 | 亚洲欧美va | 国产精品99久久久久的智能播放 | 色婷婷国产在线 | 免费视频99 | 久久免费福利 | 最近2019年日本中文免费字幕 | 丁香花中文在线免费观看 | 伊人手机在线 | 福利久久久 | 国产精品精品久久久久久 | 欧美动漫一区二区三区 | 欧洲精品视频一区二区 | 91在线小视频| 天天激情综合 | av资源网在线播放 | 午夜av电影院 | 国产在线探花 | 麻豆视频免费看 | 国产高清成人在线 | 五月婷婷六月综合 | 中文字幕在线国产精品 | 网站免费黄| 免费看一级 | 国产视频在线观看免费 | 精品999久久久 | 国产成本人视频在线观看 | 黄色片网站av | 91视频-88av | 人人精品久久 | 国内精品久久久久久久影视麻豆 | 九九天堂| 欧美日韩在线看 | 成人黄在线观看 | 男女靠逼app | 在线观看aaa | 99视频在线精品国自产拍免费观看 | 久久国内精品视频 | 99九九免费视频 | 日韩a在线观看 | 西西444www大胆高清图片 | 久草剧场| 色视频网站免费观看 | 日韩a在线看 | 日韩特黄一级欧美毛片特黄 | 美女在线观看av | 国产精品久久久久久久久久不蜜月 | 久久av影视 | 欧美日韩在线视频观看 | 国产在线观看免费 | 日韩免费视频网站 | 免费在线观看国产精品 | 国产精品久久久久久久久久久久午夜 | 色婷婷午夜| 中文字幕成人一区 | 色偷偷88888欧美精品久久久 | 草久草久 | 婷婷久久婷婷 | 久久久久国产免费免费 | 成人av在线直播 | 国产亚洲精品成人av久久影院 | 日韩在线电影一区 | 国产剧情av在线播放 | 九九在线视频免费观看 | 人人看看人人 | 欧美日韩破处 | 天天操天天干天天 | 国产免费高清视频 | 国产色a在线观看 | 国产精品综合久久久 | 亚洲国产中文字幕 | 91在线观 | 国产精品正在播放 | 九九导航 | 中文字幕在线看片 | 色六月婷婷 | 丁香婷婷在线 | 中文字幕乱码一区二区 | 免费观看特级毛片 | 在线免费黄色 | 日韩中文字幕电影 | 国产亚洲免费观看 | 成年人毛片在线观看 | 一级欧美一级日韩 | 天天干人人 | 亚洲三级国产 | 久久久久免费电影 | 欧美一级高清片 | 久久免费试看 | 国产精品午夜久久久久久99热 | 国产精品成人国产乱一区 | 色资源在线 | 亚洲国产日韩av | 国产91在线播放 | 最近在线中文字幕 | 在线看片一区 | 在线观看日韩专区 | 国产护士hd高朝护士1 | 色婷婷激情 | 日韩成人欧美 | 欧美人交a欧美精品 | 狠狠色丁香婷婷综合视频 | 97超碰国产在线 | 国产精品大尺度 | 在线观看的a站 | 色视频网站在线观看一=区 a视频免费在线观看 | 国产一级久久 | 日韩激情视频在线观看 | 天天干夜夜操视频 | 欧美日韩国产精品一区 | 久久精品欧美日韩精品 | 天天干.com | 九九九九精品九九九九 | 超碰在线人人艹 | 伊人久久一区 | 日韩激情片在线观看 | 狠狠操夜夜操 | 热99在线 | 在线观看国产一区 | 亚洲女同videos | 亚洲国产美女久久久久 | 天天干天天草 | 91在线一区二区 | 久热只有精品 | 天天干天天干 | 免费看一级 | 精品毛片一区二区免费看 | 久av电影 | 中文一区在线观看 | free. 性欧美.com | 亚洲国产成人久久综合 | 欧美成人性战久久 | 九九久久成人 | 久草在线免费播放 | 国产精品私拍 | 欧美在线视频二区 | 中文字幕一区二区三区久久蜜桃 | 五月天国产精品 | www.色综合.com | 国产69精品久久99不卡的观看体验 | 免费在线观看一区二区三区 | 欧美网址在线观看 | 国产色视频123区 | 91亚洲国产成人久久精品网站 | 亚洲免费av一区二区 | 亚洲精品小视频 | 精品久久久久久久久久久久久久久久久久 | 国产精品美女免费 | 亚洲精品一区二区三区四区高清 | 国产成人一区二区三区在线观看 | 日韩精选在线 | 91在线观看视频网站 | 国产一级免费观看 | 91视频免费网站 | 手机av片 | 日韩高清dvd | 激情视频一区二区 | 欧美999| 欧美激情另类文学 | 免费三级黄色 | a黄色一级 | 亚洲黄色片在线 | 国产自在线观看 | 2023国产精品自产拍在线观看 | 人人澡av | 中国一级片视频 | 亚洲第五色综合网 | 久久精品视频一 | 国产精品久久久久久妇 | 日本一区二区三区免费看 | 日韩一区二区三免费高清在线观看 | 亚洲天堂精品 | 日韩字幕在线观看 | 91免费版成人 | 久热精品国产 | 精品国产欧美一区二区 | 久草手机视频 | 草久在线视频 | 天天操天天干天天 | 国产成人精品一区二区三区在线观看 | 日本精品久久久久 | 久久一区国产 | 亚洲视频1区2区 | 很污的网站 | 欧美日韩免费一区 | 久久99国产一区二区三区 | 日韩精品一区二区三区在线视频 | 高清av免费看 | 福利片免费看 | 伊人色综合久久天天网 | 欧美一级专区免费大片 | 亚洲狠狠| 98精品国产自产在线观看 | .国产精品成人自产拍在线观看6 | 毛片二区 | 香蕉视频在线网站 | 日韩高清无线码2023 | 日韩午夜在线播放 | 91网址在线观看 | 五月天激情视频 | 黄色毛片电影 | 五月婷婷激情综合网 | 91精品国产91久久久久福利 | 亚洲一区二区三区四区在线视频 | 免费av在线网站 | 欧美日本在线观看视频 | 精品视频 | 在线观看中文av | 狠狠色丁香婷婷综合久久片 | 一区二区影视 | 九九九毛片 | 国产不卡视频在线 | 亚洲做受高潮欧美裸体 | 色噜噜在线观看视频 | 国产麻豆视频在线观看 | 亚洲成av | 91超碰在线播放 | 欧美另类激情 | 韩国一区二区三区在线观看 | 久久久综合香蕉尹人综合网 | 444av| 在线观看视频在线观看 | av福利网址导航 | 日韩在线大片 | 天天操操| 国产黄色免费 | 亚洲精选在线观看 | 日韩中文字幕电影 | 视频直播国产精品 | 五月婷香蕉久色在线看 | 久久视了 | 一级成人免费视频 | 日日爽天天 | 国产精品福利在线 | 亚洲视频一级 | 国产小视频国产精品 | 免费男女羞羞的视频网站中文字幕 | 四虎永久国产精品 | 天天爽天天碰狠狠添 | 成人亚洲精品国产www | 美女网站在线看 | 欧美人操人 | 午夜精品一区二区国产 | 国产成人三级在线播放 | 欧美资源| 五月婷婷综合在线视频 | 日韩精品国产一区 | 香蕉免费 | 亚洲成人精品久久久 | 久久免费精品一区二区三区 | 婷婷中文在线 | 久久久999免费视频 日韩网站在线 | 人九九精品 | 又湿又紧又大又爽a视频国产 | 精品久久久久久亚洲综合网站 | 99久久久国产免费 | 亚洲区另类春色综合小说 | 黄网站色视频 | 手机av资源 | 日韩av片免费在线观看 | 在线日韩亚洲 | 久久99精品国产麻豆婷婷 | 99久久久国产精品免费99 | 久久深夜福利免费观看 | 在线精品观看 | 国产又粗又猛又黄 | 黄色av网站在线观看免费 | 超碰97人人射妻 | 成人av网站在线观看 | 免费观看91 | 亚洲国内精品在线 | 欧美黄色特级片 | 91成人看片| 91精品一区二区三区久久久久久 | 高潮久久久久久久久 | 精品国产一区二区三区久久久久久 | 欧美与欧洲交xxxx免费观看 | 国产69精品久久久久9999apgf | 国产午夜精品在线 | 人交video另类hd | www.久久91| 九九久久婷婷 | 日韩久久视频 | 国产97色| 亚洲精品国偷拍自产在线观看 | 欧美老女人xx | 中文字幕日韩在线播放 | 免费日韩 精品中文字幕视频在线 | www.超碰97.com | 日韩一区在线播放 | 99精彩视频在线观看免费 | 特黄特色特刺激视频免费播放 | 天天干天天干天天 | 亚洲国产美女精品久久久久∴ | 最近高清中文字幕在线国语5 | 欧美极品在线播放 | 97成人免费 | 成片免费观看视频大全 | 国产人成一区二区三区影院 | 精品国产1区 | 在线蜜桃视频 | 日韩久久久久久久久久 | 日韩中午字幕 | 少妇bbw撒尿 | 精品一区二区综合 | 在线看的av网站 | 欧美日韩国产一区 | 综合网久久 | 在线免费国产视频 | 激情久久久久久久久久久久久久久久 | 免费成人av在线看 | 日韩av高潮 | 91理论片午午伦夜理片久久 | 亚洲成av人片在线观看无 | 久草| 精品国产乱码久久久久久浪潮 | 国际精品久久 | 日韩中文字幕免费在线观看 | 成人免费在线播放 | 18岁免费看片 | 日韩在线观看你懂得 | 久久电影中文字幕视频 | 日本特黄特色aaa大片免费 | 欧美在线1| 国产午夜av | 午夜精品久久久久久久99 | 手机在线观看国产精品 | 天天干夜夜操视频 | 亚洲视频 一区 | 激情视频在线观看网址 | 久久久久久久久久亚洲精品 | 黄色三级免费 | 狠狠五月天 | 婷婷色社区 | 久久婷婷五月综合色丁香 | 亚洲综合激情 | 国产91精品一区二区绿帽 | 91tv国产成人福利 | 久草视频在线资源 | 最新日韩在线观看视频 | 久草视频在 | 国产麻豆剧传媒免费观看 | 在线看的av网站 | 日韩精品一区在线观看 | 亚洲精品乱码久久久久久高潮 | 午夜精选视频 | 97超碰总站 | 久久久五月婷婷 | 国产精品永久久久久久久久久 | 在线影视 一区 二区 三区 | 嫩小bbbb摸bbb摸bbb | 91精品在线麻豆 | 精品国产乱码久久久久久1区2匹 | a成人v | 三级av在线 | 91超碰免费在线 | 欧美激情另类 | 国产手机av| 久久精品欧美一区二区三区麻豆 | 久久人人看 | 中文在线字幕免费观看 | 一区三区视频在线观看 | 超碰在线观看99 | 久久色网站 | 91av在线不卡| 欧美夫妻生活视频 | 久久字幕精品一区 | 狠狠88综合久久久久综合网 | 免费在线激情电影 | 美女网站免费福利视频 | 在线 国产 亚洲 欧美 | 一本之道乱码区 | 精品久久久久久一区二区里番 | 亚州精品视频 | 在线午夜av| 国产成人免费在线观看 | 久久久久伦理电影 | 99精品免费在线观看 | 国产成人三级在线播放 | 91av国产视频| 深爱婷婷 | 午夜精品av | 麻豆精品视频在线观看免费 | 最近的中文字幕大全免费版 | 少妇bbb搡bbbb搡bbbb′ | 看黄色91| 色婷婷综合久色 | 久久免费视频2 | 亚洲欧美国产日韩在线观看 | 五月婷婷在线视频观看 | 日韩精品免费在线观看 | 日日碰狠狠躁久久躁综合网 | 亚洲精品一区二区久 | 国产99久久久国产精品免费二区 | 久草网站在线观看 | 在线久草视频 | 夜夜操网| 久久久久久久久久国产精品 | 亚洲精品伦理在线 | 欧美日韩精品免费观看视频 | 亚洲区精品视频 | 亚洲手机av | 国产啊v在线观看 | 激情欧美一区二区三区免费看 | 久久国产精品久久久 | 亚洲午夜久久久久久久久 | 国产精品18久久久久久久网站 | 国产黄av | 91亚洲精品久久久蜜桃网站 | 久草色在线观看 | 成人免费视频网站 | 日韩三级一区 | 天天综合久久综合 | 在线a视频 | 亚洲欧洲美洲av | 国产精品久久久亚洲 | 国产视频 亚洲精品 | 色多多视频在线观看 | 日韩在线免费电影 | 国产日本在线观看 | 日韩免费成人av | 免费在线看v | 青青河边草观看完整版高清 | 国产一区视频在线播放 | 国内久久 | www.99在线观看 | 亚洲欧美视频在线 | 亚洲精品18p| www四虎影院 | a√天堂中文在线 | 国色天香在线 | 中文字幕中文字幕在线中文字幕三区 | 国产99免费| 国产精品成人自产拍在线观看 | 91av蜜桃| 国产成人精品日本亚洲999 | 久久99精品国产麻豆婷婷 | 一本色道久久综合亚洲二区三区 | 中文字幕 国产专区 | 日韩免费看 | av在线免费观看黄 | 色婷婷导航 | 久草在线资源免费 | 日本成人黄色片 | 九九精品毛片 | 国产精品国产三级国产不产一地 | 国产在线超碰 | 国产高清久久久久 | 中文字幕 国产精品 | 综合久色 | 91在线播 | 亚洲精品视频在线观看免费视频 | 精品国产资源 | 日韩欧美在线国产 | 欧美一级性生活片 | 天天射天天干天天 | 玖玖视频在线 | 久香蕉 | 亚洲精品国产第一综合99久久 | 日韩经典一区二区三区 | 欧美日本啪啪无遮挡网站 | 国产一二三区在线观看 | 韩国精品在线观看 | av一级一片 | 欧美在线观看视频免费 | 丁香综合av| 97人人超碰在线 | 免费久草视频 | 国产精品高清在线 | 精品理论片| 国语精品免费视频 | 国产又粗又长的视频 | 久久久久久久网站 | www麻豆视频 | 亚洲在线资源 | 少妇bbbb揉bbbb日本 | 这里只有精品视频在线观看 | 日韩欧美黄色网址 | 国产91aaa| 九九久久影视 | 91黄站| 国产成人精品一二三区 | 尤物一区二区三区 | 69欧美视频| 黄色免费观看网址 | 91专区在线观看 | 男女激情免费网站 | 国产成人av福利 | 麻豆成人精品 | 国产精品永久 | 亚洲精品久久久久久中文传媒 | 欧美另类高潮 | 亚洲精品免费在线播放 | 免费观看不卡av | 亚洲黄色软件 | 国产精品a成v人在线播放 | 欧美日韩午夜在线 | 亚洲高清资源 | 久久精品这里都是精品 | 亚洲欧美日韩不卡 | 日韩精品一区二区三区免费观看视频 | 亚洲三级在线免费观看 | 亚洲日本韩国一区二区 | 国产精品第一 | 国产一级电影在线 | 久久婷婷久久 | 一区二区精品视频 | 国产一区二区三精品久久久无广告 | 探花视频在线观看+在线播放 | 四虎成人精品永久免费av | 亚洲va欧美va人人爽春色影视 | 在线国产高清 | 日韩免| 91九色蝌蚪| 久久资源在线 | 国产日产欧美在线观看 | 亚洲精品国产品国语在线 | 欧美 亚洲 另类 激情 另类 | 西西www4444大胆在线 | 久久免费高清视频 | 黄色免费网站下载 | 又黄又爽又刺激的视频 | 国产一区在线精品 | 久久人人精品 | 91视频xxxx| 欧洲精品码一区二区三区免费看 | 99精品在线免费视频 | 久久免费看av | 97成人在线观看视频 | 天天射天天射 | 五月天狠狠操 | 欧美aa级 | 91网免费看| 久久久久黄 | 国产精品麻豆果冻传媒在线播放 | 久久久99精品免费观看 | 亚洲精品91天天久久人人 | 国产视频二区三区 | 免费看的黄色小视频 | 亚洲成av人片在线观看香蕉 | 中文字幕av在线免费 | 97在线资源 | 日韩av高清 | 国产一二区视频 | 日韩中文字幕免费视频 | 在线观看 国产 | 欧美污污视频 | 国产美女免费观看 | 欧美日韩91 | 免费看的黄色的网站 | 最近中文字幕国语免费av | 天天操狠狠操 | 97成人免费视频 | 日韩久久一区 | 免费人成网ww44kk44 | 在线欧美最极品的av | 天天干天天摸天天操 | 久久只精品99品免费久23小说 | 国产成人一区在线 | 九热精品 | 亚洲精品 在线视频 | 视频在线观看入口黄最新永久免费国产 | 久久精品成人欧美大片古装 | 精品产品国产在线不卡 | 国产婷婷精品av在线 |