首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在pom.xml和transactions中使用spring- boot -starter-data-jpa和spring-tx的遗留spring boot项目?

在pom.xml和transactions中使用spring- boot -starter-data-jpa和spring-tx的遗留spring boot项目?
EN

Stack Overflow用户
提问于 2021-04-13 07:35:26
回答 1查看 29关注 0票数 0

我使用的是一个遗留的Spring Boot项目,该项目在其pom.xml中列出了spring-boot-starter-data-jpa依赖项以及spring-tx依赖项(用于事务管理),如@EnableTransactionManagement管理注释等。

代码语言:javascript
运行
复制
  <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jpa</artifactId>
      <version>${spring.boot.version}</version>
    </dependency>

  <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>${spring.version}</version>
    </dependency>

我的问题是-这种依赖是多余的吗?默认情况下,spring-boot-starter-data-jpa不会为您管理事务吗?这样,注释和这个额外的"spring-tx“依赖就没有意义了?

EN

回答 1

Stack Overflow用户

发布于 2021-04-13 09:36:38

是的,如果您不想显式声明spring-tx与spring-boot-starter-data-jpa一起使用的版本,那么这是没有意义的。

唯一需要显式声明传递依赖项的情况是因为其他依赖项依赖于该传递依赖项版本。

示例:

A -> B -> C

D -> C

依赖项A需要B,但依赖项D也需要C。但由于导入依赖项C的最短路径是依赖项D,因此它将从依赖项D导入版本。如果此导入具有较低的版本,并且由于需要不同的版本而与依赖项A不兼容,则会发生错误。这就是你需要显式地声明依赖关系的版本,在这个版本中,两个依赖关系都会得到满足。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67066920

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档