Существует три основных отношения сущностей:-
- Один к одному
- Один-ко-многим/Много-к-одному
- Много-ко-многим
Установка
Проект клонирования отсюда:- Нажмите здесь Импортируйте проект на основе Maven в любую из ваших любимых IDE.
./mvnw spring-boot:run
Выход
Открыть в браузере
Доступ к базе данных H2.
http://localhost:8080/h2-console
Использование
Использование
метод run() запускается при запуске приложения. Данные добавляются в базу данных.
@Override public void run(String... args) throws Exception { Customer customer = new Customer(); customer.setName("Atharva Siddhabhatti"); customer.setEmail("atharvasiddhabhatti@gmail.com"); Item item = new Item(); item.setName("Macbook"); item.setQty(1); customer.setItem(item); item.setCustomer(customer); customerRepository.save(customer);
Данные добавляются в базу данных.
Следующие аннотации используются в классе сущности клиента для соединения двух таблиц. Проверьте файл класса, чтобы просмотреть другие объекты.
@OneToOne(fetch =FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "item_id") private Item item;
Проверьте файл класса, чтобы просмотреть другие объекты.
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "item") private Customer customer;
Выход
Конфигурация
Конфигурация
spring.jpa.show-sql = true # Enabling H2 Console spring.datasource.url=jdbc:h2:mem:testdb spring.jpa.defer-datasource-initialization=true spring.h2.console.enabled=true # Enable Web Access spring.h2.console.settings.web-allow-others=true
Оригинал: “https://dev.to/atharvasiddhabhatti/spring-boot-one-to-one-mapping-demo-with-h2-database-5cnb”