Is a Spring Data (JPA) Repository thread-safe? (aka is SimpleJpaRepository thread safe)(Spring Data (JPA) Repository 是线程安全的吗?(又名 SimpleJpaRepository 线程安全))
问题描述
我正在使用 Spring Data (JPA) 存储库 来处理 CRUD 样板.
I am using a Spring Data (JPA) repository to take care of CRUD boilerplate.
我这样定义我的存储库接口:
I define my repository interface like so:
import org.springframework.data.repository.CrudRepository;
public interface FooRepository extends CrudRepository<Foo, Long>
{
public Foo findByXAndYAndZ(X x, Y y, Z z);
}
Spring 然后自动神奇地为我生成所述接口的实现.我们得到的是一个代理,但我相信最终我们会得到一个 org.springframework.data.jpa.repository.support.SimpleJpaRepository
.
Spring then auto-magically generates me an implementation of said interface. What we get back is a proxy, but I believe that eventually we get down to a org.springframework.data.jpa.repository.support.SimpleJpaRepository
.
JdkDynamicAopProxy
是线程安全的如果 底层目标类是线程安全的.因此问题是:SimpleJpaRepository
线程安全吗?
A JdkDynamicAopProxy
is thread-safe if the underlying target class is thread-safe. The question therefore is: is SimpleJpaRepository
thread safe?
推荐答案
一般来说,是的.它假设一个托管 EntityManager
我们将从 Spring 的工厂类(如果您使用 Spring 作为容器)或作为 CDI 托管 bean(通过 @Producer代码>方法).
Generally, yes. It's assuming a managed EntityManager
which we'll either obtain from Spring's factory classes (in case you're using Spring as container) or as a CDI managed bean (declared through an @Producer
method).
这篇关于Spring Data (JPA) Repository 是线程安全的吗?(又名 SimpleJpaRepository 线程安全)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Spring Data (JPA) Repository 是线程安全的吗?(又名 SimpleJpaRepository 线程安全)
基础教程推荐
- “未找到匹配项"使用 matcher 的 group 方法时 2022-01-01
- 如何使用 Java 创建 X509 证书? 2022-01-01
- 在 Libgdx 中处理屏幕的正确方法 2022-01-01
- Java Keytool 导入证书后出错,"keytool error: java.io.FileNotFoundException &拒绝访问" 2022-01-01
- FirebaseListAdapter 不推送聊天应用程序的单个项目 - Firebase-Ui 3.1 2022-01-01
- 降序排序:Java Map 2022-01-01
- 设置 bean 时出现 Nullpointerexception 2022-01-01
- Java:带有char数组的println给出乱码 2022-01-01
- 无法使用修饰符“public final"访问 java.util.Ha 2022-01-01
- 减少 JVM 暂停时间 >1 秒使用 UseConcMarkSweepGC 2022-01-01