hibernate中Session的saveOrUpdate()方法详解

 时间:2024-10-12 04:56:55

1、Session的saveOrUpdate()方法同时包含了save()与update()方法的功能。

hibernate中Session的saveOrUpdate()方法详解

2、当数据库中没有此对象时将执行insert方法: @Test public void testSaveOrUpdate() { News news = new News("tomcat","FF",new Date()); session.saveOrUpdate(news); }

hibernate中Session的saveOrUpdate()方法详解

3、当对象设置了id时,程序将执行update语句:@Test public void testSaveOrUpdate() { News news = new News("tomcat","FF",new Date()); news.setId(1); session.saveOrUpdate(news); }

hibernate中Session的saveOrUpdate()方法详解

4、如果OID不为null,但是数据库表中还没有和其对应的记录,会抛出异常。

hibernate中Session的saveOrUpdate()方法详解

5、如果OID值等于id的unsaved-箪滹埘麽value属性值的对象,也被认为是一个游离对象。<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping> <class name="com.gwolf.domain.News" table="NEWS"> <id name="id" type="java.lang.Integer" unsaved-value="11"> <column name="ID" /> <generator class="native" /> </id> <property name="title" type="java.lang.String"> <column name="TITLE" /> </property> <property name="author" type="java.lang.String"> <column name="AUTHOR" /> </property> <property name="date" type="java.util.Date"> <column name="DATE" /> </property> </class></hibernate-mapping>

hibernate中Session的saveOrUpdate()方法详解

6、现在我们再次运行单元测试,查看程序的结果。此时尽管ID不在数据库中,程序将会执行insert语句。

hibernate中Session的saveOrUpdate()方法详解
  • 戴着棒球帽的男孩线描画怎么画
  • 图片的局部模糊马赛克效果怎么制作
  • Unity3D如何更改最大过渡速度
  • 如何从lynda官网下载视频教程的英文字幕?
  • QQ启动时报错0x0000000C怎么办
  • 热门搜索
    脂肪瘤是什么 摆地摊卖什么好 缓刑什么意思 开什么店赚钱 放屁多是什么原因造成的 2.0l是什么意思 历史是什么 子宫下垂有什么症状 脚肿是什么原因引起的 五小牛是什么牌型