当前位置: 首页 > 知识库问答 >
问题:

Hibernate基础知识

王棋
2023-03-14

我正在使用hibernate和spring mvc,并使用注释..如果存在子实体,我希望不要删除父实体。现在我可以通过代码显式地做到这一点,但它可以通过hibernate直接实现吗,我指的是通过配置??

第二,在Spring,我得到了sessionFactory。要获得我使用的会话

session factory . getcurrentsession()

我应该在一个单线类中获得会话/会话工厂并在任何地方使用它吗??

我正在使用

sessionFactory.get。保存(批处理);

sessionFactory.getCurrentSession().delete(batch);

这样我就不需要为关闭和启动会话而烦恼了,因为这是自动完成的。我是正确的吗?

共有1个答案

何雅惠
2023-03-14

> < li>

这由数据库中应有的外键约束来保证。如果子节点有一个指向其父节点的外键,并且您试图删除父节点,数据库将拒绝删除,您将得到一个异常

是的,Spring会为您打开一个会话,并将它与当前事务相关联,并在事务结束时自动关闭它。你不应该关心会议的开始和结束。将会话工厂注入到DAOs中,并在每次需要时从该工厂获取当前会话。

 类似资料:
  • 基础知识 基于 ruby 写的 官网文档:https://www.elastic.co/guide/en/logstash/5.2/first-event.html 如果是通过网络来收集,并不需要所有机子都装,但是如果是要通过读取文件来收集,那文件所在的那个机子就的安装 配置文件的写法格式:https://www.elastic.co/guide/en/logstash/5.2/configura

  • 这些基础知识简单了解一下就可以了,Linux 用的多了 就会慢慢熟悉理解了。 快捷键表 Ctrl键是终端用户常用的按键,但大多数触摸键盘都没有这个按键,因此 Termux 使用音量减小按钮来模拟Ctrl键。 例如,在触摸键盘上按音量减小+ L就相当于是键盘上按Ctrl + L的效果一样,达到清屏的效果。 Ctrl + A -> 将光标移动到行首 Ctrl + C -> 中止当前进程 Ctrl +

  • 什么是 Logstash?为什么要用 Logstash?怎么用 Logstash? 本章正是来回答这个问题,或许不完整,但是足够讲述一些基础概念。跟着我们安装章节一步步来,你就可以成功的运行起来自己的第一个 logstash 了。 我可能不会立刻来展示 logstash 配置细节或者运用场景。我认为基础原理和语法的介绍应该更加重要,这些知识未来对你的帮助绝对更大! 所以,认真阅读他们吧!

  • 四种设置回调函数的方式 匿名函数 $server->on('Request', function ($req, $resp) use ($a, $b, $c) { echo "hello world"; }); !> 可使用use向匿名函数传递参数 类静态方法 class A { static function test($req, $resp) { ech

  • PHP 是一门庞大的语言,各个水平层次的开发者都可以利用它进行迅捷高效的开发。然而在对语言逐渐深入的学习过程中,我们往往会因为走捷径和/或不良习惯而忘记(或忽视掉)我们一开始所学到基础的知识。为了帮助彻底解决这个问题,这一章的目的就是提醒开发人员注意有关 PHP 的基础编程实践。

  • 数据类型 ES5中基本数据类型有五种:Undefined,Null,Boolean,Number和String,还有一种复杂数据类型Object。 ES6引入新的原始数据类型Symbol,表示独一无二的值。 操作符 有递增递减操作符、布尔操作符、乘性操作符、加性操作符、关系操作符和相等操作符等。 注意隐式转换。 delete 操作符,用来删除对象的属性(不能用来操作变量 语句 if,while,d