随笔分类 -  Java-Hibernate

摘要:Hibernate缓存 缓存(Cache):计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如磁盘上的文件或者数据库)之间,起作用是降低应用程序直接读取永久性数据存储源的频率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝。缓存的物理介质通常是内存。 Hibernate中提 阅读全文
posted @ 2017-06-13 11:29 cctext 阅读(348) 评论(0) 推荐(0) 编辑
摘要:QBC检索 QBC查询就是通过使用Hibernate提供的Query By Criteria API来查询对象,这种API封装了SQL语句的动态拼装,对查询提供了更加面向对象的功能接口。 1)通过Critera实现具有条件的查询 执行sql及结果: 2)通过Critera实现具有AND OR条件的查 阅读全文
posted @ 2017-06-11 17:00 cctext 阅读(396) 评论(0) 推荐(0) 编辑
摘要:背景 基于上两章节《Hibernate(十二):HQL查询(一)》、《Hibernate(十三):HQL查询(二)》,已经学习了一部分关于HQL的用法: 本章节将会学习:HQL(迫切)左外连接、HQL(迫切)内连接、总结关联级别运行时的检索策略。 HQL(迫切)左外连接 迫切左外连接 1)LEFT 阅读全文
posted @ 2017-06-11 13:09 cctext 阅读(326) 评论(0) 推荐(0) 编辑
摘要:背景 基于上一章节《Hibernate(十二):HQL查询(一)》,已经学习了一部分关于HQL的用法: 本章节将会学习:HQL分页查询、HQL命名语句查询、HQL投影查询、HQL报表查询。 HQL分页查询 1)setFirstResult(int firstResult):设定从哪一个对象开始检索, 阅读全文
posted @ 2017-06-10 12:09 cctext 阅读(466) 评论(0) 推荐(0) 编辑
摘要:概述 Hibernate提供了以下几种检索对象的方式 1)导航对象图检索方式:根据已经加载的对象导航到其他对象; 2)OID检索方式:按照对象的OID来检索对象; 3)HQL检索方式:使用面向对象的HQL查询语言; 4)QBC检索方式:使用QBC(Query By Criteria)API来检索对象 阅读全文
posted @ 2017-06-08 22:09 cctext 阅读(797) 评论(0) 推荐(0) 编辑
摘要:背景: 在一些项目中,会采用集成的关系来定义数据库实体类,比如:人(Person)与学生(Student),学生来源与人,所以人的基本属性学生也拥有;但学生有的一些属性,人就不具有。人与学生之间很显然就拥有了继承关系 学生继承于人,人是父类,学生是子类。 那么,这种继承关系在hibernate是如何 阅读全文
posted @ 2017-06-08 15:02 cctext 阅读(1105) 评论(0) 推荐(0) 编辑
摘要:背景: 在实际开发中我们会遇到表的多对多关联,比如:一篇博客文章,它可以同时属于JAVA分类、Hibernate分类。 因此,我们在hibernate的学习文章系列中,需要学会如何使用hibernate来实现多对多的关联关系。 在hibernate实现多对多的关联关系中,也是需要创建一个中间表来存储 阅读全文
posted @ 2017-06-07 22:59 cctext 阅读(366) 评论(0) 推荐(0) 编辑
摘要:背景: 在实际开发中我们会遇到新建一个用户表,但这个表字段过长,而且有写字段常用(主要),有些字段比较不常用(次要)。此时,我们会考虑到把用户信息拆分到两张表中:member(存储用户主要信息),memberdetail(存储用户次要信息)。 那么,这两个表就是很明显是一对一的关系,一个用户的基本信 阅读全文
posted @ 2017-06-05 16:40 cctext 阅读(315) 评论(0) 推荐(0) 编辑
摘要:背景: 一个部门只有一个一把手,这在程序开发中就会设计数据映射应该设置为一对一关联。 在hibernate代码开发中,实现这个业务有两种方案: 1)基于外键映射的1-1关联; 2)基于主键映射的1-1关联。 本篇文章主要是用来学习如何使用外键实现1-1关联关系。 新建项目hibernate05 新建 阅读全文
posted @ 2017-06-02 12:13 cctext 阅读(342) 评论(0) 推荐(0) 编辑
摘要:背景: 在上一篇文章中实现双向关联时,其中在Customer.java中我们使用了java.util.List<Order>来关联多的Order。其实还有另外一种实现方法:使用java.util.Set来替代java.util.List。 Customer.java(定义Order:private 阅读全文
posted @ 2017-06-01 15:40 cctext 阅读(1304) 评论(0) 推荐(0) 编辑
摘要:在领域模型中,类与类之间最普通的关系就是关联关系。 在UML中,关联是有方向的: 例如:Customer与Order,一个用户能发出多个订单,而一个订单只能属于一个用户。 单向关联 1)从Order到Customer的关联是多对一关联; 定义Customer: 定义Order: 初始化项目时,生成s 阅读全文
posted @ 2017-05-24 13:28 cctext 阅读(395) 评论(0) 推荐(0) 编辑
摘要:配置文件可配项: 参考文档:hibernate-release-5.2.9.Final/documentation/userguide/html_single/Hibernate_User_Guide.html 1)Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需要的各 阅读全文
posted @ 2017-04-19 14:43 cctext 阅读(6429) 评论(0) 推荐(0) 编辑
摘要:下载hibernate开发包: 在本章之前需要继承hibernate开发插件到eclipse,详细操作请参考我的博文:《Hibernate(一):安装hibernate插件到eclipse环境》 官网地址:http://hibernate.org/ 下载页面: 下载的版本是Hibernate5.2. 阅读全文
posted @ 2017-04-15 14:31 cctext 阅读(456) 评论(0) 推荐(0) 编辑
摘要:Hibernate版本5.2.9 获取Session的方式是sessionFactory.getCurrentSession(); 比较老一些的版本使用的是sessionFactory.openSession()是不管任何情况都重新开启一个Session。 从两者却别来说getCurrentSess 阅读全文
posted @ 2017-04-15 13:54 cctext 阅读(973) 评论(0) 推荐(0) 编辑
摘要:目前使用的hibernate5.2.9版本,配置的mysql方言为: 使用的表更新策略为: 可是每次执行都出现了以下错误: 根据提示很显然得知:这是MySQL的版本问题导致的问题。 实际上,在MySQL5.0以前,type=InnoDB是有效的SQL语句,但是自己用的是MySQL5.7版本,type 阅读全文
posted @ 2017-04-15 13:45 cctext 阅读(5778) 评论(1) 推荐(0) 编辑
摘要:离线安装hibernate插件到eclipse 为什么需要安装hibernate插件到eclipse?在开发eclipse时,很多配置文件信息如果有了hibernate插件集成进来就会有自能提示,方便开发。 下载hibernate tools插件: 网址:http://hibernate.org/ 阅读全文
posted @ 2017-04-14 17:00 cctext 阅读(13840) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示