Sobes.tech
Назад к вопросам
Senior
3

Как реализовать связь один-ко-многим?

Компании, где спрашивали
МТСМТС

Ответ от нейросети

sobes.tech AI

В Java связь один-ко-многим обычно реализуется с помощью коллекций в классе, который представляет «один» объект, и ссылок на объекты, которые представляют «много». Например, если у нас есть класс Author и класс Book, где один автор может иметь много книг, то в классе Author будет поле типа List<Book>.

Пример:

import java.util.ArrayList;
import java.util.List;

class Book {
    private String title;

    public Book(String title) {
        this.title = title;
    }

    public String getTitle() {
        return title;
    }
}

class Author {
    private String name;
    private List<Book> books = new ArrayList<>();

    public Author(String name) {
        this.name = name;
    }

    public void addBook(Book book) {
        books.add(book);
    }

    public List<Book> getBooks() {
        return books;
    }
}

В контексте ORM (например, JPA/Hibernate) связь один-ко-многим реализуется с помощью аннотаций @OneToMany и @ManyToOne для правильного отображения отношений в базе данных.