Your questions seems to be whether to define a OneToMany or query for the relationship.
Normally in an object oriented system, I would say it is better to model the OneToMany in the model. So, User has a Collection favorites to Favorite. Make sure when you create a new Favorite you both add it to the User's favorites Collection and set its user.
However, it depends on how big the Collection is, and how it will be used. If a User can have 100-1,000 of Favorites, then you may not want to model it, but query for it instead. Some JPA providers, such as EclipseLink allow you to add to OneToMany Collections without forcing instantiation, so in some cases, even if you model the relationship, you may not need to instantiate it. But if you never intend to instantiate it, then there is little point having the relationship. EclipseLink also supports a query cache, so even if you query it, you still may not require accessing the database every time.