当前位置: 首页 > news >正文

10月13日hibernate培训日记

今天还是田老师讲解hibernate,大概内容如下:

hibernate配置文件中的各个配置项详细讲解,配置项也可以通过编码的方式进行设置。
向SessionFactory中加入实体的各种方法:配置和编码方式,编码又有加入文件和加入类方式,加入文件又要区分addResource与addFile的区别。
要持久化的对象应该正确处理equals和hashCode方法,解决的问题:集合中可以出现与同一条记录对应的多个实体对象,保存集合时将出现NonUniqueObjectException异常。通过hibernate在运行中的哪些地方要调用此方法来阐述。

对于Oralce,如果将id生成方式选择为Sequence,Hibernate自动在Oracle中创建Sequence,多个表的id共享同一个sequence,可以通过<Generator>元素的<param>子元素来指定"sequence"的名称。联合主键的有关问题。
Hibernate3提供了动态模型,目前这种功能还不完美。
属性值分为实体类型或值类型。
HQL、QBC、QBE等查询语言的讲解。
Query.list与Query.iterate的比较。
只有在auto-import要设置为true时,才可以在HQL语句的from从句中省略对象的包名。
HQL中的with与fetch关键字,隐式连接。

实体对应并不一定要是表,而可以是一条子查询语句。这是通过在<class>中嵌套<sub-select>来完成的。用一个Map对象来取两个表的联合视图,而这个视图是不支持数据库更新的。在这种情况下,要指定每个<Property>元素的type属性.

increment递增是hibernate先取出数据库中的最大值,然后加1后存储回去,不能解决并发问题。indentity是数据库自增。

学生的学号不要作为主键,因为学号是业务含义的,所以,可以再安排一个无意义的id字段作为主键。
第三范式(3NF)是要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在图3-2的员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。
在考虑性能的时候,有时候可以不遵循第三范式。例如,要进行迪卡尔乘积查询很慢时,可以另一个表中的数据直接放在第一个表中,从而可以不用关联查询,这样有点冗余也可以。

作业:结合使用Servlet和hibernate,实现一个用户登陆用例的程序。

相关文章:

  • Cheat Sheet的意思
  • react native把License改成MIT了
  • 10月14日~15日Oracle培训日记
  • objective-c中使用不定参数
  • 如何让2007Office兼容低版本的文档?
  • 对redux的理解
  • 从错误信息思考一个问题:.NET Framework 与 COM/COM+ 到底有多深入的关联呢?
  • 两年后小米市值在100亿美元以下
  • 10月16日培训日记
  • AppStore上发布应用,当天就过审了
  • 生榴莲的处理办法
  • [技术评论]龙芯电脑
  • window 远程登陆
  • 终于知到X.509、H.263等名字的来历了
  • China-Pub和Dearbook 谁的销售更厉害?
  • angular组件开发
  • CODING 缺陷管理功能正式开始公测
  • ECMAScript6(0):ES6简明参考手册
  • gops —— Go 程序诊断分析工具
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • Vue2.0 实现互斥
  • Work@Alibaba 阿里巴巴的企业应用构建之路
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 关于Flux,Vuex,Redux的思考
  • 聊聊hikari连接池的leakDetectionThreshold
  • 深入 Nginx 之配置篇
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 栈实现走出迷宫(C++)
  • ​520就是要宠粉,你的心头书我买单
  • (4)(4.6) Triducer
  • (c语言)strcpy函数用法
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (汇总)os模块以及shutil模块对文件的操作
  • (三)uboot源码分析
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .net的socket示例
  • .NET的微型Web框架 Nancy
  • .NET构架之我见
  • .net中我喜欢的两种验证码
  • @ 代码随想录算法训练营第8周(C语言)|Day53(动态规划)
  • @angular/cli项目构建--Dynamic.Form
  • [20171113]修改表结构删除列相关问题4.txt
  • [20190113]四校联考
  • [BZOJ1178][Apio2009]CONVENTION会议中心
  • [CentOs7]iptables防火墙安装与设置
  • [CTO札记]如何测试用户接受度?
  • [C语言][PTA基础C基础题目集] strtok 函数的理解与应用
  • [GDOUCTF 2023]<ez_ze> SSTI 过滤数字 大括号{等