Ну, это зависит от того, как вы делаете отображение таблиц в сущности.
Как правило, таблица "foo" с внешними ключами к таблице "bar" будет представлена в виде классов Java Foo и Bar. Foo будет содержать ссылку на класс Bar.
Если вы используете фреймворк, такой как Hibernate, вы увидите что-то вроде этого:
@Entity
@Table(name="foo")
public class Foo {
//...
@ManyToOne
@JoinColumn(name="bar_id", nullable=false)
private Bar bar;
public Foo(Bar b) {bar = b;}
// getters and setters
}
Это означает, что в таблице foo есть столбец bar_id, который указывает на запись таблицы баров.
Сущность Foo содержит ссылку на сущность Bar.
Если вы используете hibernate или работаете с БД вручную (например, с шаблоном DAO), рекомендуется иметь конструктор, который получает "чужую" сущность.
Проверьте эти ссылки для получения дополнительной информации:
https://www.baeldung.com/java-dao-pattern
https://www.baeldung.com/hibernate-one-to-many
Надеюсь, это поможет, добро пожаловать в переполнение стека