Parameter 0 of constructor in serviceImpl. Jpa, Spring
Всем привет, пытаюсь запустить код,но почему-то,ничего не получается, падает с ошибкой:
В интернете не смог найти ответа, ничего не помогает. Мой код:
Repository:
public interface StudentRepository extends JpaRepository<Student,Long> {
}
StudentServiceImpl:
@Service
@RequiredArgsConstructor
public class StudentServiceImpl implements StudentService {
private final StudentRepository repository;
private final StudentMapper mapper;
@Override
public StudentResponseDTO createCompany(StudentRequestDTO studentRequestDTO) {
Student student = mapper.studentRequestDtoToStudent(studentRequestDTO);
repository.save(student);
return mapper.studentToStudentResponseDto(student);
}
}
Student(Entity):
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "name")
private String name;
@Column(name = "surname")
private String surname;
@Column(name = "department")
private String department;
@Column(name = "group")
private String group;
}
Pom dependencies:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>2.7.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.4.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.10</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>6.1.2.Final</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.5.2.Final</version>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>javax.persistence-api</artifactId>
<version>2.2</version>
</dependency>
</dependencies>
Ответы (2 шт):
Автор решения: Klioda
→ Ссылка
Такое может быть из-за 6-й версии hibernate-core. Насколько я понимаю, её пока не поддерживает Spring.
А вообще, hibernate-core (5-х версий), spring-boot-autoconfigure и persistence-api уже есть в подключенных стартерах.
Автор решения: MishaBucha
→ Ссылка
Помогло следующее. Удаление зависимостей mapstucr + класса mapper. Потом я переименовал столбец group в entity, ведь есть оператор group у postgresql.Всем спасибо)

