亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

SpringDataMongoDB多文檔事務的實現

2024-07-14 08:42:44
字體:
來源:轉載
供稿:網友

一、安裝MongoDB4.0.3(××)

1.1、官方安裝文檔

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/

1.2、tar.gz包下載地址

https://www.mongodb.com/download-center/community?jmp=docs

1.3、復制集官方配置

https://docs.mongodb.com/manual/administration/replica-set-member-configuration/

二、SpringProject版本依賴(×)

Spring:5.1.1.RELEASE 以上

SpringDataMongoDB:2.1.1.RELEASE 以上

三、配置MongoTransactionManager(SpringBoot使用方式)

SpringBoot 集成非常簡單,配置MongoTransastionManager,目前Spring-boot-starter-data-mongodb 版本較低不支持,因此暫未驗證,SpringBoot配置復制集參考SpringBoot相關文檔

@Configurationstatic class Config extends AbstractMongoConfiguration {  @Bean  MongoTransactionManager transactionManager(MongoDbFactory dbFactory) {     return new MongoTransactionManager(dbFactory);  }  // ...}

四、配置MongoTransactionManager(普通Spring項目)

  <context:property-placeholder location="classpath:mongo.properties" ignore-unresolvable="true"    file-encoding="utf-8" />  <!--     重點配置    1.安全配置:credentials="${mongo.user}:${mongo.password}@${mongo.database}"     2.單機配置:host="${mongo.host}" port="${mongo.port}"    3.副本集配置:replica-set="${mongo.replSet}"  -->  <mongo:mongo-client id="mongoClient" replica-set="${mongo.replSet}">    <mongo:client-options min-connections-per-host="${mongo.minConnectionsPerHost}"      write-concern="SAFE"      read-preference="NEAREST"      threads-allowed-to-block-for-connection-multiplier="${mongo.threadsAllowedToBlockForConnectionMultiplier}"      connect-timeout="${mongo.connectTimeout}" max-wait-time="${mongo.maxWaitTime}"      socket-keep-alive="${mongo.socketKeepAlive}" socket-timeout="${mongo.socketTimeout}"      max-connection-idle-time="${mongo.maxConnectionIdleTime}"      max-connection-life-time="${mongo.maxConnectionLifeTime}"      heartbeat-socket-timeout="${mongo.heartbeatSocketTimeout}"      heartbeat-connect-timeout="${mongo.heartbeatConnectTimeout}"      min-heartbeat-frequency="${mongo.minHeartbeatFrequency}"      heartbeat-frequency="${mongo.heartbeatFrequency}" />  </mongo:mongo-client>  <mongo:db-factory id="mongoDbFactory" dbname="${mongo.database}"    mongo-ref="mongoClient" />  <bean id="mappingContext"    class="org.springframework.data.mongodb.core.mapping.MongoMappingContext" />  <bean id="defaultMongoTypeMapper"    class="org.springframework.data.mongodb.core.convert.DefaultMongoTypeMapper">    <constructor-arg name="typeKey">      <null />    </constructor-arg>  </bean>  <bean id="mappingMongoConverter"    class="org.springframework.data.mongodb.core.convert.MappingMongoConverter">    <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />    <constructor-arg name="mappingContext" ref="mappingContext" />    <property name="typeMapper" ref="defaultMongoTypeMapper" />  </bean>  <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">    <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />    <constructor-arg name="mongoConverter" ref="mappingMongoConverter" />  </bean>  <!-- 重點配置 -->  <bean id="mongoTransactionManager" class="org.springframework.data.mongodb.MongoTransactionManager">    <constructor-arg name="dbFactory" ref="mongoDbFactory"/>  </bean>  <tx:annotation-driven transaction-manager="mongoTransactionManager" proxy-target-class="true"/> 

五、使用事務(×)

@Servicepublic class StateService {  @Autowired  private MongoTemplate teplate;  @Transactional  void someBusinessFunction(Step step) {                     template.insert(step);    log.debug(1/0);  };});

六、Mongo.properties 配置

mongo.host=192.168.1.66mongo.port=27017mongo.replSet=192.168.1.66:2000,192.168.1.66:2001,192.168.1.66:2002mongo.minConnectionsPerHost=10mongo.threadsAllowedToBlockForConnectionMultiplier=4mongo.connectTimeout=30000mongo.maxWaitTime=3000mongo.socketKeepAlive=falsemongo.socketTimeout=30000mongo.maxConnectionIdleTime=0mongo.maxConnectionLifeTime=0mongo.heartbeatSocketTimeout=20000mongo.heartbeatConnectTimeout=10000mongo.minHeartbeatFrequency=3000mongo.heartbeatFrequency=5000mongo.database=labsta

七、最后是重點(×××××)

7.1、必須使用復制集,單節點不支持,mongodb4.2 會支持分片集事務,復制集安裝請自行研究
7.2、使用事務之前(@Transaction),數據庫和文檔必須提前創建,如何解決呢?且看下篇
7.3、Spring版本和SpringDataMongodb版本必須遵循 @SpringProject版本依賴
7.4、注意,此處的復制集不是4.0版本之前的主從復制集群,4.0之后已廢棄主從模式

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久这里有精品| 久久久久在线观看| 姬川优奈aav一区二区| 国产精品欧美亚洲777777| 成人午夜在线观看| 国产成人精品在线视频| 国内成人精品视频| 久久久久久久久91| 国产精品xxx视频| 亚洲精品mp4| 国产精品久久久久久久久借妻| 日本一区二区三区在线播放| 日韩经典一区二区三区| 国产亚洲精品美女| 日韩国产中文字幕| 亚洲电影天堂av| 国产婷婷成人久久av免费高清| 97热精品视频官网| 午夜精品美女自拍福到在线| 欧美性在线观看| 亚洲精品日韩丝袜精品| 欧美日韩国产中文精品字幕自在自线| 色久欧美在线视频观看| 欧美性受xxx| 一区二区三区四区精品| 欧美xxxx18性欧美| 日韩风俗一区 二区| 在线观看日韩专区| 欧美激情免费在线| 欧美在线亚洲在线| 欧美丝袜一区二区三区| 亚洲精品在线观看www| 亚洲精品自拍视频| 久久久久久亚洲精品| 91黑丝在线观看| 精品久久香蕉国产线看观看亚洲| 国产不卡视频在线| 亚洲资源在线看| www高清在线视频日韩欧美| 91精品国产91久久久久久最新| 国产成人一区二区| 亚洲视频第一页| 欧美麻豆久久久久久中文| 77777亚洲午夜久久多人| 亚洲精品午夜精品| 成人伊人精品色xxxx视频| 欧美激情免费观看| 亚洲风情亚aⅴ在线发布| 欧美日韩亚洲系列| 国产精品自拍偷拍| 成人黄色免费在线观看| 久久久久这里只有精品| 亚洲自拍在线观看| 91av视频在线| 91精品国产乱码久久久久久久久| 日韩在线观看网址| 亚洲乱码av中文一区二区| 欧美日本啪啪无遮挡网站| 亚洲欧美综合v| 狠狠色狠狠色综合日日五| 国产亚洲日本欧美韩国| 国产亚洲aⅴaaaaaa毛片| 亚洲精品美女网站| 欧美精品久久一区二区| 国产精品美腿一区在线看| 亚洲国产成人爱av在线播放| 久久久欧美一区二区| 久久九九免费视频| 亚洲精选在线观看| 国产亚洲视频中文字幕视频| 97碰碰碰免费色视频| 26uuu国产精品视频| 精品国产成人av| 欧美性极品xxxx做受| 日韩电影网在线| 日韩在线观看免费网站| 亚洲精品有码在线| 日本不卡高字幕在线2019| 日韩免费观看视频| 日本亚洲欧美三级| 日韩有码在线电影| 欧美激情亚洲一区| 亚洲色图欧美制服丝袜另类第一页| 欧美成人三级视频网站| 韩国福利视频一区| 另类专区欧美制服同性| 精品久久久久久中文字幕大豆网| 日韩在线中文字| 亚洲男人天堂手机在线| 国模视频一区二区三区| 欧美日韩黄色大片| 欧美日韩亚洲高清| 久久久国产影院| 欧美激情精品久久久久久黑人| 久久久精品国产一区二区| 国产一区二区三区三区在线观看| 国产精品一区二区三区在线播放| 亚洲一二三在线| 91精品久久久久久久久| 亚洲一区二区三区xxx视频| 欧美激情欧美狂野欧美精品| 久久久久久久国产| 欧美日韩中文字幕在线| 欧美视频在线观看免费| 欧美午夜激情在线| 在线亚洲午夜片av大片| 欧美理论电影网| 欧美成人sm免费视频| 91av国产在线| 日韩视频永久免费观看| 亚洲香蕉av在线一区二区三区| 欧美日韩色婷婷| 欧美日韩在线观看视频小说| 国产精品精品视频| 国产精品自产拍在线观| 精品视频久久久久久| 91精品国产色综合久久不卡98| 精品成人在线视频| 91久久国产精品| 疯狂蹂躏欧美一区二区精品| 国产精品1区2区在线观看| 亚洲性夜色噜噜噜7777| 国产精品久久久久久久久久久久| 日韩美女视频免费在线观看| 欧美尤物巨大精品爽| 国内成人精品视频| 欧美性高潮床叫视频| 国产精品久久激情| 欧美重口另类videos人妖| 欧美疯狂性受xxxxx另类| 欧美日韩国产页| 亚洲人成网在线播放| 久久久成人av| 亚洲综合视频1区| 国产精品欧美激情| www高清在线视频日韩欧美| 日韩精品视频免费专区在线播放| 91在线中文字幕| 北条麻妃一区二区在线观看| 久久视频这里只有精品| 国产成人精品最新| 欧美成年人在线观看| 中文字幕亚洲无线码在线一区| 久久免费精品日本久久中文字幕| 久久久亚洲网站| 亚洲精品456在线播放狼人| 一本大道亚洲视频| 亚洲女性裸体视频| 国产亚洲精品一区二区| 国产一区二区在线免费视频| 国产综合香蕉五月婷在线| 中文字幕无线精品亚洲乱码一区| 国产精品91免费在线| 日韩在线精品一区| 国产亚洲在线播放| 亚洲人成在线免费观看| 亚洲国产精久久久久久| 国产成人精品一区| 在线视频欧美日韩精品| 久热在线中文字幕色999舞| 性欧美办公室18xxxxhd| 国产日韩中文字幕| 91天堂在线视频| 91wwwcom在线观看|