java - 使用 JpaRepository 接口(interface)。如何让 entitymanager 设置属性?

标签 java jpa spring-data

我系统中的所有 DAO 都只是接口(interface),如下所示:

public interface UserDAO extends JpaRepository<User, String> {
    User findByUsername(String username);
    Page<User> findAll(Pageable pageable);
}

仅此而已。

但现在我需要在 entitymanager 中设置一个属性。 如何在我的界面中获取实体管理器?

bean 是:

<bean id="transactionManager"
        class="org.springframework.orm.jpa.JpaTransactionManager"
        p:entityManagerFactory-ref="entityManagerFactory" />

但我需要在我的 DAO 中设置这个属性,因为这个属性取决于登录的用户。

最佳答案

您将需要创建一个自定义存储库,如 spring-data 文档中所述。这可以针对单个存储库或所有存储库完成。

下面清楚地概述了该过程。

http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.single-repository-behaviour

关于java - 使用 JpaRepository 接口(interface)。如何让 entitymanager 设置属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28945053/

相关文章:

java - 如何使用querydsl调用mysql函数?

java - 执行 JpaTest 时找不到 @SpringBootConfiguration

java - 带有 Predicate 的 Spring Data JPA 方法 findAll() - QueryDslPredicateExecutor

spring - 如何使用 Spring Data JPA 连接两个表

c# - 使用 C# RFID 包和 Java

java - 更改 Spring PropertyPlaceholderConfigurer 以从另一个源读取

spring - 将 OneToOne/ManyToOne 与 JPA 和多个数据源一起使用时出错

java - 是什么导致 SunCertPathBuilderException : unable to find valid certification path to requested target

java - JTextArea 行中的字符限制

java - Spring jpa在回滚期间保存数据