@OneToMany нацеливается на несопоставленный класс, но класс сопоставлен - PullRequest
0 голосов
/ 16 июня 2019

Я устанавливаю весеннюю защиту, но когда я определяю отношение @OneToMany, я получаю сообщение об ошибке:

Использование @OneToMany или @ManyToMany для таргетинга на несопоставленный класс: loginApi.users.Users.roles [Security.Roleinfo]

Я уже попробовал большинство ответов здесь, да, я импортирую из javax.persistance да, @Entity находится на вершине каждого класса

@Entity
@Data
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "users")
public class Users {
    @Id
    @Column(name="username")
    private String username;
    private String firstname;
    private String lastname;
    private int curreventid;
    private String email;
    private String password;
    private int points;
    private int phone;

        // problem part
    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    @JoinTable(name = "usersrole", joinColumns = {@JoinColumn(name = "username")}, inverseJoinColumns = {@JoinColumn(name = "roleid")})
    private Set<Roleinfo> roles;
}

Вот класс roleinfo:

@Entity
@Data
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "roleinfo")
public class Roleinfo {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private int roleid;
    private String roletitle;

}

прямо сейчас я пытаюсь объединить мою таблицу userrole, в которой есть два столбца, содержащие имя пользователя и роль этого пользователя (roleid), с таблицей пользователей.

любая помощь будет оценена!

1 Ответ

0 голосов
/ 16 июня 2019

Спасибо @JB Nizet, после прочтения документации я понял, что мой пакет безопасности не входит в мой пакет springbootapp, что означает, что пользовательский класс никогда не проверялся на наличие флага @Entity.

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