From 35466f01dc694997d54f39ea42ac32441182ddaa Mon Sep 17 00:00:00 2001 From: Alexander Vinogradow Date: Thu, 17 Apr 2025 12:56:58 +0300 Subject: [PATCH] fix: You shouldn't use @Autowired. @PersistenceContext takes care to create a unique EntityManager for every transaction (communication with the database). https://stackoverflow.com/questions/31335211/autowired-vs-persistencecontext-for-entitymanager-bean --- src/main/java/io/hexlet/blog/mapper/ReferenceMapper.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/io/hexlet/blog/mapper/ReferenceMapper.java b/src/main/java/io/hexlet/blog/mapper/ReferenceMapper.java index 965719e..b0160aa 100644 --- a/src/main/java/io/hexlet/blog/mapper/ReferenceMapper.java +++ b/src/main/java/io/hexlet/blog/mapper/ReferenceMapper.java @@ -1,18 +1,17 @@ package io.hexlet.blog.mapper; +import io.hexlet.blog.model.BaseEntity; +import jakarta.persistence.EntityManager; +import jakarta.persistence.PersistenceContext; import org.mapstruct.Mapper; import org.mapstruct.MappingConstants; import org.mapstruct.TargetType; -import org.springframework.beans.factory.annotation.Autowired; - -import io.hexlet.blog.model.BaseEntity; -import jakarta.persistence.EntityManager; @Mapper( componentModel = MappingConstants.ComponentModel.SPRING ) public abstract class ReferenceMapper { - @Autowired + @PersistenceContext private EntityManager entityManager; public T toEntity(Long id, @TargetType Class entityClass) {