Я хочу сохранить / обновить список объектов таким образом, чтобы в базе данных было максимально 4 SQL-операции / запроса .
2 вставить запрос на новые записи для двух разных таблиц.
2 запрос на обновление записей об обновлении двух разных таблиц.
Возможно ли это в Hibernate для HSQL, MSQL, Oracle, MYSQL
Обыскав это, я обнаружил следующее решение для вставки с MySQL.
Установить следующее свойство для конфигурации фабрики сеанса гибернации.
hibernate.jdbc.batch_size
И используйте следующий URL для подключения
jdbc\:mysql\://localhost\:3306/opshub?rewriteBatchedStatements=true
Генерирует одиночный запрос вставки
insert into test values (1,"abc"),(2,"xyz");
Требуется это для HSQL, MSSQL, ORACLE
У меня есть Java-объект, представляющий таблицы, как показано ниже.
class UserDetails{
int id;
String userName;
OneToMany
List<UserAssociation> association;
}
class UserAssociation{
ManyToOne
UserDetails user;
int systemId;
int lastSeenTime;
}
У меня будут следующие записи для вставки / обновления
List<UserDetails> inserts (with List<UserAssociation> association);
List<UserAssociation> inserts and update for UserDetails
List<UserDetails> updates
List<UserAssociation> updats
Требование состоит в том, что эти данные в БД должны быть не более 4 запросов с Hibernate и всеми серверами БД, такими как SQL-SERVER, MySQL, ORACLE, HSQL