我創建了一個自定義存儲庫來覆蓋持久性方法,并嘗試將其連接起來,如春季文檔中所述。我沒有收到任何錯誤,啟動時找到了所有實體和存儲庫,當我調用repo.saveAll(實體)時,持久性工作正常。但是,從不調用我的自定義代碼。我已經添加了日志語句,甚至在我的代碼中拋出了RuntimeExceptions,只是為了看看它是否正在執行,但它肯定被忽略了。我錯過了哪一步?@Configuration@Profile("test")@EnableJpaRepositories(repositoryBaseClass = SetClientInfoRepositoryImpl.class, basePackages = {"gov.penndot.hwy.apras.common.repository" }, entityManagerFactoryRef = "serviceEntityManagerFactory", transactionManagerRef = "serviceTransactionManager")public class TestDatabaseConfig { @Bean(name = "serviceDataSource") public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName("org.h2.Driver"); dataSource.setUrl("jdbc:h2:mem:db;DB_CLOSE_DELAY=-1"); dataSource.setUsername("sa"); dataSource.setPassword("sa"); return dataSource; } @Bean public EntityManagerFactoryBuilder entityManagerFactoryBuilder() { return new EntityManagerFactoryBuilder(new HibernateJpaVendorAdapter(), new HashMap<String, Object>(), null); } @Bean(name = "serviceEntityManagerFactory") public LocalContainerEntityManagerFactoryBean serviceEntityManagerFactory(EntityManagerFactoryBuilder builder, @Qualifier("serviceDataSource") DataSource dataSource) { return builder .dataSource(dataSource) .packages("stuff") .persistenceUnit("service") .build(); } @Bean(name = "serviceTransactionManager") public PlatformTransactionManager transactionManager( @Qualifier("serviceEntityManagerFactory") EntityManagerFactory serviceEntityManagerFactory) { return new JpaTransactionManager(serviceEntityManagerFactory); }
春季 JPA 基本存儲庫
慕工程0101907
2022-08-03 15:36:09