Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 04.07.2018
Сообщений: 21

Не удается найти Bean, Parameter 0 of constructor in main.service.DatabaseServiceImpl required a bean of type '

29.08.2023, 16:48. Показов 4173. Ответов 5

Студворк — интернет-сервис помощи студентам
Я сделал базовое spring приложение, которое привязано к mySql
Контроллер
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
@RestController
@RequestMapping("/api/hero")
public class Api {
    private final DatabaseService service;
//    @Autowired
    Api(DatabaseService service){
        this.service = service;
    }
 
    @RequestMapping("/{id}")
    Hero getHeroById(@PathVariable long id){
        return service.getHeroById(id);
    }
Класс работы с БД
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
@Service
@Transactional
public class DatabaseServiceImpl implements DatabaseService{
    private final HeroRepository heroRepository;
    @Autowired
    public DatabaseServiceImpl(HeroRepository heroRepository){
        this.heroRepository = heroRepository;
    }
 
    @Override
    public Hero saveHero(Hero hero) {
        return heroRepository.save(hero);
    }
 
    @Override
    public Hero getHeroById(Long id) {
        return heroRepository.getReferenceById(id);
    }
 
    @Override
    public List<Hero> getAll() {
        return heroRepository.findAll();
    }
}
И репозиторий
Java
1
2
3
4
5
6
7
@Repository
public interface HeroRepository extends JpaRepository<Hero,Long> {
    Optional<Hero> findById(Long id);
    void deleteById(Long id);
    List<Hero> readAll();
 
}
В момент старта приложения, происходит ошибка
Parameter 0 of constructor in main.service.DatabaseServiceImpl required a bean of type 'main.repos.HeroRepository' that could not be found.
Что похоже означает DatabaseServiceImpl не видит бин HeroRepository, но я же обозначил его как @Repository, в чем моя ошибка?
https://github.com/Traums/SpringWeb
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.08.2023, 16:48
Ответы с готовыми решениями:

Ошибка Field templateEngine in MailComponent required a bean of type 'org.thymeleaf.Template
Делала контактную форму в Spring . Выводится такая ошибка: ield templateEngine in MailComponent required a bean of type...

Required request parameter 'fullText' for method parameter type String is not present
Здравствуйте! Начал свое знакомство с фреймворком Spring. Не понимаю, в чем проблема в данном случае. Почему не хватает параметра...

Не удается получить bean объекта класса (Spring, AOP, ProxyFactoryBean)
Добрый день! подскажите почему idea ругается таким образом): Bean named 'proxyOne' is expected to be of type...

5
Amabile opus
 Аватар для 4eDo
109 / 65 / 25
Регистрация: 08.01.2019
Сообщений: 308
29.08.2023, 17:07
К сервису добавьте аннотацию:
Java
1
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
Должно помочь.
0
0 / 0 / 0
Регистрация: 04.07.2018
Сообщений: 21
29.08.2023, 17:22  [ТС]
Добавил аннотацию, ошибка не ушла :с, что-то мне подсказывает где-то что-то вроде опечатки
Java
1
2
3
4
5
6
7
8
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class DatabaseServiceImpl implements DatabaseService{
//    @Autowired
    private final HeroRepository heroRepository;
//    @Autowired
//    public DatabaseServiceImpl(HeroRepository heroRepository){
//        this.heroRepository = heroRepository;
//    }
0
Amabile opus
 Аватар для 4eDo
109 / 65 / 25
Регистрация: 08.01.2019
Сообщений: 308
29.08.2023, 20:05
Tr4um, если не разберёшься, завтра заберу твой код из репо и посмотрю
0
 Аватар для reisal78
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,925
29.08.2023, 22:23
Лучший ответ Сообщение было отмечено Tr4um как решение

Решение

Tr4um,

1. У вас конфликты зависимостей в pom.xml

Кликните здесь для просмотра всего текста

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.1.3</version>
    <relativePath/> <!-- lookup parent from repository -->
  </parent>
  <groupId>org.example</groupId>
  <artifactId>SpringWeb</artifactId>
  <packaging>war</packaging>
  <properties>
    <maven.compiler.source>20</maven.compiler.source>
    <maven.compiler.target>20</maven.compiler.target>
  </properties>
  <version>1.0-SNAPSHOT</version>
  <name>SpringWeb Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.28</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.json</groupId>
      <artifactId>json</artifactId>
      <version>20230227</version>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.5</version>
    </dependency>
    <dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <scope>runtime</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>SpringWeb</finalName>
  </build>
</project>

2. application.yaml для h2
Кликните здесь для просмотра всего текста

XML
1
2
3
4
5
6
7
8
9
10
spring:
  datasource:
    url: "jdbc:h2:~/test"
    username: sa
    password:
#    driver-class-name: "com.mysql.cj.jdbc.Driver"
  jpa:
    generate-ddl: true
    hibernate:
      ddl-auto: create

3. HeroRepository не нужно оверайдить методы JpaRepository. readAll - нарушение name-based query - будет падать с ошибкой
Java
1
2
3
4
5
6
7
@Repository
public interface HeroRepository extends JpaRepository<Hero,Long> {
    //1 Optional<Hero> findById(Long id);
    //2 void deleteById(Long id);
   //3 List<Hero> readAll();
 
}
Добавлено через 1 минуту
... а после правки зависимостей нужно будет поправить импорты entity transaction и тд jakarta.persistence
0
0 / 0 / 0
Регистрация: 04.07.2018
Сообщений: 21
30.08.2023, 08:22  [ТС]
Проблема дейстивтельно была в зависимостях, помогло пересобирание проекта через инициалайзер, проблема же с бином решилась прописав @EnableJpaRepositories(basePackages = {"ru.mart.*"} в главном классе.
Рабочий вариант https://github.com/Traums/Spri... r/src/main
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.08.2023, 08:22
Помогаю со студенческими работами здесь

Error creating bean with name 'mvcValidator' и Error creating bean with name 'requestMappingHandlerAdapter'
Собираю проект. Есть класс AppConfig @Configuration @EnableWebMvc @ComponentScan(&quot;ru.liberty.ms.*&quot;) public class AppConfig...

Java Bean
помогите сделать bean для сайта,чтобы на главной странице, можно было выбирать цвет текста для всех страниц

Jelly Bean 4.2.2
Родные, подскажите, где взять официальную прошивку для Android Jelly Bean 4.2.2 для Alcatel POP c7 ? Всякие кастомные выдают ошибку...

Servlet and Session Bean
чем они отличаются??? и как с ними работать??? как поместить данные из БД на веб страницу через них??? может кто нибудь толково...

Bean в сервлетах и jsp
WebFormJSP.jsp тут хтмл ${bean.all} ${bean.s} тут еще хтмл ControllerServlet ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru