随笔分类 -  javaweb之Hibernate框架

摘要:一、Hibnernate 和 Spring结合方案: 方案一: 框架各自使用自己的配置文件,Spring中加载Hibernate的配置文件。 方案二: 统一由Spring的配置来管理。(推荐使用) 二、结合步骤 2.1 加载框架的jar包 2.2 框架的配置文件 hibernate.cfg.xml 阅读全文
posted @ 2017-05-31 22:03 shyroke、 阅读(448) 评论(0) 推荐(0) 编辑
摘要:一、什么是延迟加载 为了节省Hibernate加载对象的性能节销,在Hibernate中真正需要用到这个对象时,才会发出 SQL语句来抓取这个对象。这一个过程称为延迟加载。 二、延迟加载的分类 A:实体对象的延迟加载 B:一对多|多对多的延迟加载 C:多对一|一对一的延迟加载 D:属性的延迟加载 A 阅读全文
posted @ 2017-05-25 19:47 shyroke、 阅读(272) 评论(0) 推荐(0) 编辑
摘要:Hibernate的双向关联。 对象之间可以相互读取。 双向只针对读取的操作。对于增、删除、改的操作没有任何影响。 案例 : 实现双向多对多 MenuBean.java RoleBean.java 添加到总配置文件即可实现。 阅读全文
posted @ 2017-05-25 17:01 shyroke、 阅读(182) 评论(0) 推荐(0) 编辑
摘要:案例一: 注解方式实现一对一 UserBean.java CardBean.java 把含注解的bean添加到总配置文件中, 案例二: 使用映射文件xml实现一对一 CardBean.java UserBean.java 创建映射文件 UserBean.hbm.xml 创建映射文件 CardBean 阅读全文
posted @ 2017-05-24 22:18 shyroke、 阅读(274) 评论(0) 推荐(0) 编辑
摘要:多对多的处理方式是,有一张中间表,中间表保存两个多方之间的关系。首先来看实际应用场景:在之前开发的系统中,应用了基于角色的控制访问,也就是RBAC模型,一个用户可能存在多种角色,一种角色也可能有多个用户,所以用户和角色之间是一个多对多的关系。 案例一: 使用注解方式实现多对多关系 RoleBean. 阅读全文
posted @ 2017-05-24 17:36 shyroke、 阅读(213) 评论(0) 推荐(0) 编辑
摘要:一、单向一对多() 案例一(用XML文件配置): 一个班级有多个学生,班级可以查看所有学生的信息。 ClassBean.java StudentBean.java 单向一对多的映射文件 : ClassBean.hbm.xml StudentBean.hbml.xml 测试类 案例二:使用注解测试单向 阅读全文
posted @ 2017-05-14 17:14 shyroke、 阅读(172) 评论(0) 推荐(0) 编辑
摘要:由“多”方可知“一”方的信息,比如多个员工使用同一栋公寓,员工可以知道公寓的信息,而公寓无法知道员工的信息。 案例一:使用xml配置 pojo类 Group.java GroupUser.java 实体映射文件 Group.hbm.xml GroupUser.hbm.xml <many-to-one 阅读全文
posted @ 2017-05-14 17:14 shyroke、 阅读(258) 评论(0) 推荐(0) 编辑
摘要:Hibernate里有两种注解 : 主键生成机制 : http://www.cnblogs.com/ph123/p/5692194.html 案例一: 用注解对非复合主键的表生成配置文件 更新总配置文件 案例二: 用注解对含有复合主键的表生成配置文件 ScoreId.java 更新总配置文件 使用注 阅读全文
posted @ 2017-05-13 22:55 shyroke、 阅读(216) 评论(0) 推荐(0) 编辑
摘要:一、什么是复合主键? 一张表的主键是由多个字段组成,这个主键就被称为复合主键。 主键是唯一确定某条记录的字段,比如公民的身份证号就是一个主键,因为由身份证号这个主键就可以确定 某个公民。 有一种情况,比如学生成绩这张表中,一个学号无法唯一确定这个学生的成绩,因为这个学生有多科成绩,这时候“学号+学科 阅读全文
posted @ 2017-05-13 21:02 shyroke、 阅读(1107) 评论(0) 推荐(0) 编辑
摘要:HibernateUtil.getSessionFactory().getCurrentSession() 和HibernateUtil.getSession() 的区别: 1.异:getCurrentSession() 创建的线程会在事务回滚或事物提交后自动关闭,而getSession需要手动关闭 阅读全文
posted @ 2017-05-13 19:46 shyroke、 阅读(574) 评论(0) 推荐(0) 编辑
摘要:在hibernate中获取connection数据库连接有两种方法:(操作数据库常用这种方法) 1. session.doReturningWork 返回一个对象,适用于查询方法 2. session.doWork 不返回对象,适用于增删改 案例一: 结果: 代码在下面章节 阅读全文
posted @ 2017-05-13 16:32 shyroke、 阅读(584) 评论(0) 推荐(0) 编辑
摘要:一、在Hibernate中使用原生SQL语句 sql语句面向的是数据库,所以sql语句中对应的不再是bean了,比如sql="select * from user" 在hql中*是无效的,但是在sql中可以使用,且user指的是数据库中的user表。 案例一: 代码在下面章节 阅读全文
posted @ 2017-05-13 16:17 shyroke、 阅读(211) 评论(0) 推荐(0) 编辑
摘要:接上一章节 HQL的预编译语句 接上一章节 HQL的预编译语句 HIbernate中的预编译与Spring的预编译的处理差不多。 1:使用标准的? 2:使用命名参数 2.1:使用名称逐个设置。 2.2:使用Map(key的值等于参数的名称) 2.3:使用Bean(属性的名称等于参数的名称) 案例一: 阅读全文
posted @ 2017-05-13 14:57 shyroke、 阅读(231) 评论(0) 推荐(0) 编辑
摘要:Hiberntae的查找操作有多种: 1. 使用Criteria接口查询 Query_Criteria.java 2. Hibernate 查询方法(HQL:Hibernate Query Language): 不能进行insert操作 Query_HQL.java 代码在下面章节 阅读全文
posted @ 2017-05-10 22:50 shyroke、 阅读(325) 评论(0) 推荐(0) 编辑
摘要:1.创建java工程,并导入hibernate所需要的jar包 2.通过IDE构建一个基础的Hibernate工程。 产生 hibernate.cfg.xml的框架总配置文件。 HibernateUtil的工具类。 这样一个空白的hibernate工程就创建完毕了。 3. 配置hibernate总配 阅读全文
posted @ 2017-05-07 19:00 shyroke、 阅读(188) 评论(0) 推荐(0) 编辑
摘要:一、什么是JAP JPA(Java Persistence API)是SUN官方推出的Java持久化规范,它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据。它的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在Hibernate,TopLink,JDO等O 阅读全文
posted @ 2017-05-07 16:32 shyroke、 阅读(151) 评论(0) 推荐(0) 编辑
摘要:一、ORM思想解析 要了解学习Hibernate框架,就不得不提到ORM思想,因为Hibernate就是基于ORM思想的一个产品。 1.1 介绍 广义上,ORM指的是面向对象的对象模型和关系型数据库的数据结构之间的相互转换。 狭义上,ORM可以被认为是,基于关系型数据库的数据存储,实现一个虚拟的面向 阅读全文
posted @ 2017-05-07 16:18 shyroke、 阅读(142) 评论(0) 推荐(0) 编辑

作者:shyroke 博客地址:http://www.cnblogs.com/shyroke/ 转载注明来源~