Это классы прямое отображение вашей схемы БД (т.е. описывают java-кодом как у вас данные в БД хранятся) или это ваши обычные классы, которые участвуют в бизнес логике?
Если первое, то такое обычно лучше генерить автоматом с помощью какого-нибудь JOOQ, если оно вам вообще надо. И тогда это будет вариант 1
Если второе, то конечно выбираете вариант 2. Какой вам толк от одного id-шника? А если вам куда-то передавать надо будет Record, то ещё и отдельно его User будете тащить?
Есть ещё вариант, что это у вас какое-то DTO и нужно только знать id, связанного пользователя и всё. Самого пользователя никогда внутри Record увидеть не хотите, не ожидаете, не нужно, лишние таскать тяжело. Тогда вариант 1.
Вообщем. Исходите из решаемой проблемы и как вы с этим будете дальше жить и использовать.