только после рефакторинга имен пакетов рассмотрите возможность определения bean-компонента типа * в вашей конфигурации - PullRequest
0 голосов
/ 25 марта 2020

этот кусок кода работал отлично, я просто реорганизовал имена пакетов и контекст весны больше не может внедрять этот bean-компонент. Уверен, кстати, что новые имена пакетов по-прежнему соответствуют @ ComponentScan scope

@Repository("tenantsConfigRepository")
public interface TenantsConfigRepository extends JpaRepository<TenantsConfig, Long> {
    public TenantsConfig deleteByName(String name);
}
@Service
public class TenantsConfigService {

    TenantsConfigRepository tenantsConfigRepository;


    @Autowired
    public TenantsConfigService(TenantsConfigRepository tenantsConfigRepository) {
        this.tenantsConfigRepository = tenantsConfigRepository;
    }

    public List<TenantsConfig> findAll() {
        return tenantsConfigRepository.findAll();
    }

    public Optional<TenantsConfig> find(long id) {
        return tenantsConfigRepository.findById(id);
    }

    public void saveOrUpdate(TenantsConfig tenantsConfig) {
        tenantsConfigRepository.save(tenantsConfig);
    }

    public void delete(TenantsConfig tenantsConfig) {
        tenantsConfigRepository.delete(tenantsConfig);
    }

    public void deleteByName(String name) {
        tenantsConfigRepository.deleteByName(name);
    }
}

Приложению не удалось запуститься и распечатать этот текст

***************************
APPLICATION FAILED TO START
**************************

Description:

Parameter 0 of constructor in com.example.admin.service.TenantsConfigService required a bean named 'entityManagerFactory' that could not be found.


Action:

Consider defining a bean named 'entityManagerFactory' in your configuration.

1 Ответ

0 голосов
/ 25 марта 2020

спасибо, ребята, что ответили, я понял это, я использовал источник данных из класса конфигурации, эти конфигурации были ограничены для использования для указания c пакетов, я просто изменил атрибут basePackages, чтобы соответствовать новым пакетам Имена.

@Configuration
@EnableJpaRepositories(basePackages = "com.example.admin", entityManagerFactoryRef = "adminEntityManager", transactionManagerRef = "adminTransactionManager")

и

em.setPackagesToScan("com.example.admin.entity");

em относится к EntityManager

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...