jak utworzyć złożony klucz podstawowy (adnotacja trwałości java)

Jak to zrobić, aby tabela user_roles definiowała dwie kolumny (userID, roleID) jako złożony klucz podstawowy. powinno być łatwe, po prostu nie pamiętam / znajdź.

Wuser jednostka:

@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "user_roles")
public List<RoleDAO> getRoles() {
    return roles;
}

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public Integer getUserID() {
    return userID;
}

Wroles jednostka:

@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "user_roles")
public List<UserDAO> getUsers() {
    return users;
}

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public Integer getRoleID() {
    return roleID;
}

Dziękuję Ci.

** WIĘCEJ INFORMACJI

Jest więc trzecia tabelauser_roles (generowane automatycznie przez powyższe), które trwauserID zuser podmiot iroleID zroles jednostka. Teraz potrzebuję tych dwóch kolumn w wygenerowanej tabeli (user_roles) być złożonym kluczem podstawowym.

questionAnswers(5)

yourAnswerToTheQuestion