Проблема с созданием геттеров и сеттеров со списком

#java #hibernate

#java #спящий режим

Вопрос:

Я изучаю сопоставление «один ко многим», и это моя область для курсов

  @OneToMany(mappedBy = "instructor", cascade = {CascadeType.MERGE, CascadeType.PERSIST, 
 CascadeType.DETACH, CascadeType.REFRESH})
 private List<Course> courses;
 

У меня есть несколько других полей, я обновлю вопрос, если кто-то попросит, но я думаю, что другие поля и код не важны, потому что все в порядке.

Моя проблема в том, что когда я перехожу к автоматической генерации геттеров и сеттеров, я получаю это:

  public List<com.hibernate.demo.entity.Course> getCourses() {
    return courses;
 }
 

Как вы можете видеть по какой-то причине, параметром для списка является полный путь к пакету с именем параметра поля списка. Я могу вручную изменить его на just Course , но это не работает после того, как я попытаюсь создать этот метод.

 public void add(Course tempCourse) {

    if (courses == null) {
        courses = new ArrayList<>();
    }
    courses.add(tempCourse);
    }
 

После того, как вручную измените параметр списка на Course мою ошибку для метода Cannot access com.hibernate.demo.entity.Course , это означает, что он все еще ищет полный пакет, даже если я ввел параметр Course . Ошибка включена course.add(tempCourse);

Кроме того, я создал тот же список в классе курса с параметром инструктора, и все работает нормально.

Ответ №1:

Пожалуйста, посмотрите, включен ли корень ваших каталогов в путь к классу, и если ваш курс class является общедоступным, если проблема сохраняется, покажите, как ваши классы структурированы в пакетах, и я знаю, что это немного глупый вопрос, но вы импортировали класс, прежде чем генерировать getter и setter?

Комментарии:

1. У меня есть 3 пакета: com.hibernate.demo ; com.hibernate.demo.entity ; com.hibernate.test.jdb … Конечно, преподаватель в ...entity

2. я вижу, пожалуйста, обновите свой вопрос полным кодом класса после автоматического создания геттеров и сеттеров.