Hibernate的one

Hibernate的one-to-one其实是many-to-one的一个特例,所以配置时可以在一边配置one-to-many,事实也证明,如果两边都使用one-to-one配置,是无法实现级联操作的,至少我没有成功。

我改进后的配置如下:

在News.hbm.xml中:

1<many-to-one name="text" lass="com.simpleton.myuniversity.domain.Text" lazy="false"> 2 <column name="textId" unique="false"></column> 3</many-to-one>

在Text.hbm.xml中:

<one-to-one name="news" class="com.simpleton.myuniversity.domain.News" cascade="save-update" lazy="false" />

这样配置的话,我只需要调用方法

1News n = new News(); 2Text t = new Text(); 3 4//省略n和t的其他属性设置 5 6n.setText(t); 7t.setNews(n); 8 9INewsService newsService = new NewsServiceImpl();//News的service方法,里面封装了saveNews方法 10 11newsService.saveNews(n);

只需要保存News对象就可以实现级联操作了,Hibernate实现持久化的时候会自动给数据库中的News标的textId插入对应Textd对象的id值

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Java获得今日零时零分零秒的时间(Date型)

publicDatezeroTime()throwsParseException{    DatetimenewDate();    SimpleDateFormatsimpnewSimpleDateFormat("yyyyMMdd00:00:00");    SimpleDateFormatsimp2newS