一个自增长ID的对象被save或者persist后,会返回其主键ID: Department department = new Department(); department.setName("xxxxxxx"); session.persist(department); System.out.println("id = " + department2.getId()); Department department2 = new Department(); dep…
1.load()与get()的区别: (1)load()读取 User user = (User)session.load(User.class, userId); (2)get()读取 User user = (User)session.get(User.class, userId); 以上是load与get的读取方式,看上去差不多,以下来说说他们的区别: (1)load方法读取是假定在数据库中存在的,如果在数据库中不存在,则会抛出异常: 而get方法不会去假定数据库中是否存在,如果不存…
Save save()方法能够保存实体到数据库,正如方法名称save这个单词所表明的意思.我们能够在事务之外调用这个方法,这也是我不喜欢使用这个方法保存数据的原因.假如两个实体之间有关系(例如employee表和address表有一对一关系),如果在没有事务的情况下调用这个方法保存employee这个实体,除非调用flush()这个方法,否则仅仅employee实体会被保存. saveOrUpdate saveOrUpdate()方法会执行插入或者更新操作.如果该对象在数据库中已经存在则更新,不…
1.The use of function merge(update.insert.delete) Example: #1.Initialize the data create table #test(id int ,value int); create table #test2(id int ,value int); insert into #test values(0,0) insert into #test values(1,1) insert into #test values(2,2)…
[z]https://www.baeldung.com/hibernate-save-persist-update-merge-saveorupdate 1. Introduction In this article we will discuss the differences between several methods of the Sessioninterface: save, persist, update, merge, saveOrUpdate. This is not an i…