findByID HIbernate 5

Opa,

Galera, tenho a seguinte dúvida e gostaria da ajuda de vocês.
Faço o seguinte comando:

this.usuarioRepository.findById(id).get();

Sendo que a classe que retorno tem o seguinte mapeamento:

@Entity

@Table(name=“usuario”)
public class Usuario implements Serializable {
private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long id;

@Column(name="primeironome", nullable=false, length=50)
@NotNull
@Size(min = 2, max = 50)
private String nome;

@Column(name="sobrenome", length=100)
@Size(max = 100)
private String sobreNome;

@OneToMany(mappedBy="usuario", fetch=FetchType.LAZY)
private List<Telefone> telefones;

E a classe Telefone:

@Entity

@Table(name=“telefone”)
public class Telefone implements Serializable {
private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long id;

@Column(nullable=false)
@NotNull
private Integer ddd;

@Column(nullable=false)
@NotNull
private Integer numero;

@Column(length=50)
@Size(max = 50)
private String ramal;

@ManyToOne
@JoinColumn(name="fkeusuario", nullable=false)
@NotNull
private Usuario usuario;

Quando executo o findById que mencionei acima, é retornado algo como:

   Nome do Usuario
   Sobrenome do usuário
   Telefone 1
       Nome do Usuario
       Sobrenome do usuário
       Telefone 1
           Nome do Usuario
           Sobrenome do usuário

Ou seja, retorna o usuário, os telefones do usuário e ai começa um loop.
Minha dúvida é, como poderia fazer para retornar os dados do usuário e os telefones, mas ignorando o atributo usuário dentro do telefone, para não entrar em loop?

Geralmente não se mapeia em forma de loop.
Mas seu loop está diretamente nesta chamada do hibernate ou ao serializar pro front? Pois são formas diferentes de tratar.

Muito obrigado pela resposta Rodrigo.
Estou usando Spring Boot (2.1) com Hibernate (5.3).
O Controller recebe o JSON e repassa ao Service em forma de objeto, e ai o findByID é executado.

Usando a resposta deste post, tive sucesso: https://stackoverflow.com/questions/16577907/hibernate-onetomany-relationship-causes-infinite-loop-or-empty-entries-in-json

No caso usando as anotações @JsonManagedReference e @JsonBackReference resolveram meu problema, mas não entendi muito bem o que aconteceu e a consulta mesmo assim, ainda ficou esquisita, retornando alguns campos a mais.

Fiz o mapeamento errado?
A ideia era fazer bidirecional, para filtrar tanto os endereços pelo id do usuário, quando retornar o usuário com todos seus endereços.

O problema supostamente está na serialização pro front, não na consulta.
Eu costumo resolver isso com @JsonIgnore no atributo q n deve ir pro front, pra evitar a referencia circular.

Beleza, eu vou pesquisar mais sobre o atributo que acabou de mencionar e os outros atributos do post que encontrei ontem.
Muito obrigado pela resposta.
Resolveu meu problema.