当前位置: 首页 > 知识库问答 >
问题:

添加@transactional on方法后,这个类(服务)不能自动连线bean(存储库)吗?

董胡媚
2023-03-14
  1. 在MyBootApplication上添加了@EnableTransactionManagement
  2. @bean public Object testBean(PlatformTransactionManager PlatformTransactionManager){system.out.println(“>>>>>>>>>>>>TransactionManager为”+PlatformTransactionManager.GetClass().GetName());return new Object();}it print TransactionManager为org.springframework.orm.jpa.jpatransactionManager
  3. @Service open class UserService:BaseService(){@AutoWired lateinit var Repository:UserRepository@Transactional fun updateValid(id:Long,valid:Boolean){ErrorConstant.ParamerRorCode.IDisNull.CasetHrow{id==0.Tolong()}Repository.updateValid(id,valid)}}

我使用Spring.boot构建我的项目。

当我移除@transactional时,一切都很好。

但当我加进去的时候。存储库为空,无法注入。

我使用@transaction注释和@autowired-spring阅读了这个问题,并且在我的application.properties中添加了Spring.aop.proxy-target-class=true,仍然是相同的错误。

我用kotlin来写,但我猜这不是原因。

即使如此,我稍后还会尝试使用java。

我的错误,我在基础服务中有一些属性,也应该在上面加开。

共有1个答案

松秦斩
2023-03-14

我已经在func上添加了“open”,但省略了propeties。

@PersistenceContext
protected open lateinit var em: EntityManager

@Autowired
protected open lateinit var env: Environment
 类似资料:
  • 我正在为我的应用程序使用模拟存储库 以下是服务的外观片段: 以下是存储库代码: 当我使用执行main()时,它工作正常。 但是,当我想运行测试类: 它会因以下stacktrace而失败: 原因:org。springframework。豆。工厂NoSuchBean定义异常:没有类型为“edu”的合格bean。勒勒亚克。存储库。WeatherStationRepositoryMock’可用:至少需要1

  • 在我们的代码中,我们有许多Spring JPA存储库,每个模型类一个。它们被定义为(其中

  • 我与SpringBoot和JPA合作。我收到一个无法完成的错误。 这是我的主要课程: 这是我的班级失败的原因: 这是类: 这是错误消息: 错误创建bean的名称'请求LoggerImpl':注入自动生成的依赖失败; 无法自动关联字段:专用com。存储库。请求logdao.com。记录器。impl。RequestLoggerImpl。请求logdao;嵌套的异常是org。springframewor

  • 我已经用@Autowired注释为相应的存储库定义了服务类 存储库接口定义为从JpaReepository扩展 应用程序自动编译服务类 运行时,我得到以下错误

  • 我正在将一个项目从Symfony 3升级到Symfony 4(https://github.com/symfony/symfony/blob/master/UPGRADE-4.0.md),我有很多这样的存储库/服务: 当我尝试在浏览器中这样运行项目时: 我得到这个错误: 这是否意味着您必须在services.yaml文件中为“条令\ORM\Mapping\ClassMetadata”创建服务? 由

  • 我在服务类中的自动连线 Bean 上收到 。我尝试自动连线的类是Cassandra Repository。 我的主要类应用程序.java 我的Cassandra配置CassandraConfig.java 我的仓库(dao)产品价格仓库.java 我的服务类ProductService.java 我的pom.xml 我的理解是,注释应该拿起存储库并根据注释创建 bean。ProductServic