Mam pakiet (na przykład packagesToScan
) zawierający klasy, które chcę utrwalić z komentarzem @Entity
.Zignoruj niektóre klasy podczas skanowania PackagesToScan
Podczas definiowania konfiguracji ApplicationContext
wykonałem następujące czynności.
@Configuration
@EnableJpaRepositories("packagesToScan")
@EnableTransactionManagement
@PropertySource("server/jdbc.properties")
@ComponentScan("packagesToScan")
public class JpaContext {
... // Other configurations ....
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
LocalContainerEntityManagerFactoryBean emf = new LocalContainerEntityManagerFactoryBean();
emf.setDataSource(this.dataSource());
emf.setJpaVendorAdapter(this.jpaVendorAdapter());
emf.setPackagesToScan("packagesToScan");
emf.setJpaProperties(this.hibernateProperties());
return emf;
}
Rozwijając, mam jakieś zajęcia w ciągu packagesToScan
, która nie spełnia wymagań w zakresie trwałości (jak żaden podstawowych kluczy itp) i ze względu na to, że nie wolno mi się uruchomić test z powodu niepowodzenia konfiguracji ApplicationContext
.
Teraz, Czy jest jakiś sposób, że mogę zeskanować tylko wybrane klasy lub zignorować niektóre klasy z zakresu packagesToScan
?
Możesz usunąć/skomentować adnotację @Entity, dopóki twoja jednostka nie jest kompletna. Następnie nie zostanie pobrane przez dostawcę uporczywości. –
Czy nie można zeskanować tylko niektórych elementów, z którymi chcę przetestować? – TheKojuEffect
Można także usunąć opcję packagesToScan, utworzyć plik persistence.xml i listę elementów tutaj. Nadal nie rozumiem twojej motywacji do wykluczenia niektórych podmiotów - możesz łatwo usunąć adnotacje @Entity, jeśli jesteś w trakcie rozwoju, a twoja jednostka nie jest kompletna, czy coś mi brakuje? –