У меня есть приложение весенней загрузки, в которое я хочу вставить несколько записей, используя один запрос к БД: -
public void addEvents() {
String sql = "INSERT INTO Data values(1,'Data 1'), (2,'Data 2'),(3,'Data 3')";
EntityManager entityManager = entityManagerFactory.createEntityManager();
entityManager.getTransaction().begin();
entityManager.createNativeQuery(sql).executeUpdate();
entityManager.getTransaction().commit();
}
Класс сущности: -
@Entity
@Table
public class Data {
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private String name;
public Data(String name) {
this.name = name;
}
public Data(Integer id, String name) {
this.id = id;
this.name = name;
}
public Data() {
}
}
Здесь Data - это сущность, которую я вставляю.Мне нужно вставить более 10000 строк в моей БД в течение секунд.Поэтому запуск отдельных вызовов в БД обходится слишком дорого.Поэтому я использовал один запрос для этой цели.Этот запрос является собственным запросом.Может кто-нибудь сказать мне, если JPA предоставляет готовый API для вставки нескольких сущностей в один кл БД?