Duvida de Hibernate com chaves compostas

Bom dia,

Tenho o seguinte problema:
Class User.class

@Table(catalog="[banco]", schema="schema", name = "user")
public class User{
    @Id
    Colum(name="id")
    private Integer id;
    Colum(name="name")
    private String nome;
}

Class System.class

@Table(catalog="[banco]", schema="schema", name = "system")
public class System{
    @Id
    Colum(name="id")
    private Integer id;
    Colum(name="name")
    private String nomeSistema;
}

Class Group.class

@Table(catalog="[banco]", schema="schema", name = "group")
public class Group{
    @Id
    Colum(name="id")
    private Integer id;
    Colum(name="name")
    private String nomeGrupo;
}

Agora tenho:

Class UserSystem.class

@Table(catalog="[banco]", schema="schema", name = "user_system")
public class UserSystem{
    
        @ManyToOne
	@Column(name="id_user")
	private List<User> userList;
	
	@ManyToOne
	@Column(name="id_system")
	private List<System> systemList;
}

Class SystemGroup.class

@Table(catalog="[banco]", schema="schema", name = "system_group")
public class SystemGroup{
    
        @ManyToOne
	@Column(name="cod_idsystem")
	private List<System> systemList;
	
	@ManyToOne
	@Column(name="cod_idgroup")
	private List<Group> groupList;
}

O que eu uso na annotations da UserSystemGroup.class ?

@Table(catalog="[banco]", schema="schema", name = "user_system_group")
public class SystemGroup{
    
        private List<SystemGroup> systemGroupList
	
	private List<UserSystem> userSystemList;
}

Att.

pelo que pude entender vc tem tres relações Many-to-many (UserSystem,SystemGroup,UserSystemGroup), que não estão mapeadas dessa forma.
http://docs.jboss.org/hibernate/core/3.3/reference/en/html/associations.html#assoc-unidirectional-join-m2m
http://docs.jboss.org/hibernate/stable/annotations/reference/en/html_single/#entity-mapping-association-collections -> 2.2.5.3.3. Many-to-many