hibernate 学习汇总(更新ing)
来源:互联网 发布:李世民杀兄 知乎 编辑:程序博客网 时间:2024/05/19 07:43
--------------------------------------异常总结-------------------------------------------------------------------
Exception in thread "main" org.hibernate.LazyInitializationException: could not initialize proxy - no Session
问题产生: 由于使用了load()函数 并将session 关闭,然后使用load出来的对象属性产生错误。
以上问题是由于新版的hibernate中奖属性获取方式lazy默认为ttrue,就是延迟抓取。所谓的延迟抓取就是在使用该对象属性的时候才会真正的去数据库读取数据,因此当你把session关闭之后,你就相当于和数据库连接中断了,那么获取数据将发生异常。
-------------------------------------------知识点汇总-------------------------------------------------------------------------------------------------
1.hibernate 继承映射有如下方式
i.一个子类对应着一张表(即子类独有的字段就是表的字段)
ii.一个表对应着多个类(指的是一个表存储着不同子类的信息)
iii.一个完整的类对应着一张表(指的是所有的一个表体现了子类与父类的所有字段)
注意:对于一个表对应着多个类的映射情况需要注意的是存在着区别子类对象的字段,比如男生boy与女生girl同样继承于一个person person对应的表字段应该涵盖所有子类的字段,而sex字段就是区分boy与girl,同时区别的字段sex不应该做为映射的属性,
配置如下
<hibernate-mapping>
<class lazy="false" name="testhibernate.student" table="student">
<id name="id" column ="id" type="integer" >
<generator class="native"></generator>
</id>
<!--区别子类的字段-->
<discriminator column="sex"></discriminator>
<property generated="never" lazy="true" name="name" type="java.lang.String">
<column name="name"/>
</property>
<property generated="never" lazy="true" name="school" type="java.lang.String">
<column name="school"/>
</property>
<subclass name="testhibernate.boy.boy" discriminator-value="1">
<property name="height" type="double"></property>
</subclass>
<subclass name="testhibernate.girl.girl" discriminator-value="0">
<property name="height" type="double"></property>
</subclass>
</class>
</hibernate-mapping>
- hibernate 学习汇总(更新ing)
- MaxCompute常见错误汇总(更新ing)
- jQuery 学习(更新ing)
- Hibernate配置文件标签理解(更新ing)
- 【学习路线】最新Java开发资料汇总(持续更新ing)
- sniffer pro学习小记(更新ing)
- awk学习笔记(实时更新ing ...)
- MFC工作学习笔记(更新ing)
- matlab 学习笔记(更新ing)
- hibernate学习ing(第二天)
- iOS技术网站汇总(持续更新ing)
- React Native常见问题汇总(持续更新ing)
- React Native常见问题汇总(持续更新ing)
- MaxCompute常用语句汇总(更新ing)
- linux学习资料,更新ing
- Groovy 学习持续更新ing
- 学习shell的几个网站(更新ing)
- 学习c++的优秀博客(更新ing)
- ORACLE回表(一)
- 如何在ubuntu 上安装eclipse: how to install eclipse on ubuntu
- SQL Server 脚本大小写
- ORACLE回表(二)
- ubuntu 挂载windwos分区
- hibernate 学习汇总(更新ing)
- B Conic Section
- ORACLE回表(三)
- hdu 1231 最大连续子序列
- Servlet中forward和redirect的区别(转)
- GnomeSort 又是一个O(n2),不过,只用一次循环……
- c文件
- oracle 10G表空间页面打开慢(非常慢)的解决方法
- MTK手机软件系统工程和配置简介