¿Cómo cargar solo identificadores de muchas a muchas tablas de mapeo?

En una relación de muchos a muchos entre dos tablas con una tabla de asignación en el medio, ¿cómo puedo cargar solo los identificadores para la segunda entidad?

El siguiente es el ejemplo para explicar lo que quiero lograr aquí. A continuación se muestra un esquema de muestra

create table user(
 id int PrimaryKey,
 name text
)
create table pages (
 id int PrimaryKey,
 page_name text
)
create table user_page (
 id_user int,
 id_page int,
 PrimaryKey (id_user, id_page)
)

Nota: hay columnas adicionales en las tablas de usuarios y páginas que no he incluido aquí por brevedad.

Entidad de usuario:

@Entity
@Table(name = "user")
public class User {
 @id
 @column(name="id")
 private Integer id;
 @column(name="name")
 private String name;
 ... 
 ...
}

@Entity
@Table(name = "page")
public class Page {
 @id
 @column(name="id")
 private Integer id;
 @column(name="page_name")
 private String name;
 ... 
 ...
}

Lo que quiero hacer es agregar otro atributo.Set<Integer> pageIds enUser clase y tienen todos los identificadores de página asignados para un usuario en esta colección.

¿Cómo se puede hacer esto usando Hibernate?

Respuestas a la pregunta(2)

Su respuesta a la pregunta