谷粒商城 289-290 Seata遇到各种问题解决方案

谷粒商城 289-290 Seata遇到各种问题及解决方案 —— pom引入、seata版本、数据库等问题

1、首先关于Seata pom依赖问题

根据老师视频是将pom直接导入common中

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
</dependency>
  • 问题一:
    经过种种错误,我认为该坑点在于,给common中引入之后,其他所有微服务都要进行Seata的配置,和各种文件查找之类的,其他微服务启动可能会报错。

    • 所以应将该依赖放入每个需要的微服务中,例如:order、ware等
  • 问题二:
    起初从网上搜到的pom引入如下(用的是0.9.0,0.7.1有数据库批量插入问题,for依次插入即可)

 <dependency>
	   <groupId>com.alibaba.cloud</groupId>
	   <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
	   <exclusions>
	       <exclusion>
	           <groupId>io.seata</groupId>
	           <artifactId>seata-all</artifactId>
	       </exclusion>
	   </exclusions>
</dependency>
 <dependency>
    <groupId>io.seata</groupId>
    <artifactId>seata-all</artifactId>
    <version>0.9.0</version>
</dependency>

我的项目接着遇到 DataSourceProxy找不到的错误
在这里插入图片描述

百转千回,解决为应给setat加上版本号。
最终pom文件应再各个需要的微服务上添加如下:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
    <version>2.1.0.RELEASE</version>
    <exclusions>
        <exclusion>
            <artifactId>seata-all</artifactId>
            <groupId>io.seata</groupId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>io.seata</groupId>
    <artifactId>seata-all</artifactId>
    <version>0.9.0</version>
</dependency>

2、首先关于Seata 使用版本问题

  • 问题一:默认seata的2.1.0.RELEASE版本对应的软件版本(seata-all)为0.7.1
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
</dependency>

但是0.7.1会遇到无法批量插入:at io.seata.rm.datasource.AbstractPreparedStatementProxy.addBatch

解决:将批量插入saveBatch改为for循环依次插入

//orderItemService.saveBatch(orderItems);
for (OrderItemEntity orderItem : orderItems) {
    orderItemService.save(orderItem);
}

3、结尾

至此,问题已基本解决,这是目前我遇到的问题和解决,仅供大家参考……

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自行自路,别后无书

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值