通常我通过sql / hql语句插入或更新它们来将我的对象存储在数据库中。
query = session.createQuery("INSERT INTO Employee(firstName, lastName, salary)");
query.executeUpdate();
最近我读到了关于Hibernates session.save()
方法,它接受了一个类,并且似乎自动地将具有它的属性的类插入到DB中。
所以我想知道,"保存"办?
它是否只为用户生成SQL语句?
或者与普通的hqlQuery方式相比有什么优点或缺点吗?
答案 0 :(得分:0)
保存:
Save方法将对象存储到数据库中。它将保留给定的瞬态实例,首先分配生成的标识符。它返回创建的实体的id。
正如docs
所说,
保留给定的瞬态实例,首先分配生成的 标识符。 (或者使用标识符属性的当前值if 使用指定的生成器。)此操作级联到关联 如果关联使用cascade =“save-update”进行映射,则为实例。
另请查看What are the differences between the different saving methods in Hibernate?