Olá,
olhando as demais postagens, notei que várias pessoas ficaram com dúvidas na proposta da solução no capítulo 2, principalmente sobre as annotations utilizadas.
No meu caso, não foi diferente. Venho do curso anterior de JPA e lá o Rodrigo comenta para colocar LAZY em relacionamentos ManyToOne.
Entendo que a idéia seja analisar caso a caso, mas acredito que pelo fato do professor somente postar o código da solução, tenha prejudicado a didática.
Um outro detalhe tbm, é que peguei o exemplo passado e fiz utilizando EntityManagers, ou seja, sem utilizar o framework e quando fui rodar o mesmo código utilizando o framework Spring tive que alterar algumas annotations para funcionar. Acredito que se tivesse uma explicação passo a passo teria ficado mais facil de entender.