![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hibernate学习笔记
文章平均质量分 63
Tuzki_小辣鸡
这个作者很懒,什么都没留下…
展开
-
Hibernate学习笔记1,映射文件的配置
Hibernate简单步骤——第三步:建立实体类与数据库表结构的映射关系,需要编写配置文件 * 规范:一般都会在实体类(domain)的包下创建名称为:"**实体类名.hbm.xml**"的配置文件。首先规范不是必须的,但是咱们开发尽量按着规范来。 * 在XML文档中需要引入DTD的约束,该DTD的约束在org\hibernate\hibernate-mapping-3.0....原创 2018-04-08 19:22:43 · 202 阅读 · 0 评论 -
Hibernate学习笔记7,持久化对象的状态与session对象的一级缓存
Hibernate持久化对象的状态 持久化对象的状态 Hibernate的持久化类 持久化类:Java类与数据库的某个表建立了映射关系.这个类就称为是持久化类. 持久化类 = Java类 + hbm的配置文件 Hibernate的持久化类的状态 持久化对象的三个状态:看唯一标识OID是否有值,对象是否被Session对象管理 Hibernate为了管理持久化类:将持久化类分成了...原创 2018-04-12 16:52:23 · 159 阅读 · 0 评论 -
Hibernate学习笔记12,抓取策略,客户查询的优化
一、Hibernate抓取策略 Hibernate抓取策略是指当应用程序需要在关联关系间进行导航的时候,Hibernate如何获取关联对象的策略。 Hibernate有如下几种抓取策略: 1、链接抓取(Join fetching):Hibernate 通过在select语句中使用out join来获取对象的关联实例或者关联集合。 2、查询抓取(Select fetching):发送另外一条...原创 2018-04-18 11:31:18 · 146 阅读 · 0 评论 -
Hibernate学习笔记6:客户列表查询实现(重点理解dao,service)
将学习笔记5的测试类放到实际应用中进行测试要用到dao,serivice,servlet类进行分级编写:编写的顺序是dao-service-servlet首先是dao的编写:CstCustomer接口类(code)public interface CstCustomerDao { //插入客户信息 public void insert(CstCustomer customer);原创 2018-04-11 15:53:06 · 267 阅读 · 0 评论 -
Hibernate学习笔记11,对象图导航方式查询
对象图导航方式查询 客户关联查询 1.需求 客户来源信息存在数据字典表中 数据字典表:存储了系统需要的基本类别信息,比如:客户来源、客户级别、客户所属行业、客户状态 数据字典表到客户信息表是一对多关系 客户信息表到数据字典表是多对一关系 实现: 查询客户信息,关联查询客户来源信息。 2.建表 3.创建映射文件 数据字典表 客户信息表 ...原创 2018-04-17 09:59:14 · 575 阅读 · 0 评论 -
Hibernate学习笔记5:QBC条件查询例子
什么是QBc: QBC(Query By Criteria)按条件查询,通过Criteria构造查询条件,即通过调用Criteria的api实现各种查询。 通过Criteria对象拼装 查询条件,调用Criteria的add方法拼接查询条件,最终hibernate通过criteria对象自动生成sql语句。 QBC检索步骤: 1.调用Session的createCriteria()方法...原创 2018-04-11 10:33:03 · 711 阅读 · 0 评论 -
Hibernate学习笔记10,用户角色分配,多对多关系表的级联管理
需求: 用户即使用系统的用户,包括业务员、总经理等角色,不同类型的用户使用系统不同的功能,本功能要完成给用户分配角色,功能包括:给用户分配角色、取消用户分配的角色。 分析: 用户信息:单独创建一张用户表,存储使用本系统的用户。 角色信息:单独创建一张角色表,存储用户的角色。 一个用户拥有多个角色 一个角色下边有多个用户 用户和角色多对多关系,单独创建一个关系表记录用户拥有什么角色...原创 2018-04-15 14:39:58 · 2662 阅读 · 0 评论 -
Hibernate学习笔记9,表的外键管理,级联管理
创建联系人表 联系人表 与客户表是多对一的关系,所以在联系人表中应该添加一个外键与客户表的主键相关联,通过外键指定联系人所属客户,外键作用:为了数据完整性 设计联系人表: 创建联系人映射文件 一对多和多对一映射配置 一个客户有多个联系人,客户到联系人为一对多关系。 一个联系人只有属于一个客户,联系人到客户多对一关系。 hibernate提供一对多、多对一映射关系。 ...原创 2018-04-14 13:51:24 · 709 阅读 · 0 评论 -
Hibernate学习笔记4,单例模式编写工具类
编写HibernateUtil的工具类: sessionFactory是线程安全的,所以可以使用单例,意味着它的一个实例可以被应用的多个线程使用 HibernateUtil工具类代码如下 public class HibernateUtil { private static SessionFactory sessionFactory; //通过 单例管理ses...原创 2018-04-09 14:17:28 · 103 阅读 · 0 评论 -
Hibernate学习笔记3,编写测试类(注意格式)
Hibernate简单步骤—–第五步: 编写添加数据的入门代码(添加操作) public class CrudTest { //添加 @Test public void insert() { //创建sessionFactory //默认加载classpath下的hibernate.cfg.xml Sess...原创 2018-04-09 00:46:42 · 328 阅读 · 0 评论 -
Hibernate学习笔记2,配置Hibernate框架的核心配置文件
Hibernate简单步骤——第四步: 配置Hibernate框架的核心配置文件。需要在src的目录下创建hibernate.cfg.xml的配置文件,并且编写配置文件 * 先创建hibernate.cfg.xml的配置文件,注意是在src的目录下 * 在xml的配置文件中引入DTD的约束,该DTD约束需要自己来找到,在org\hibernate\hibernate-C...原创 2018-04-09 00:30:57 · 222 阅读 · 0 评论 -
Hibernate学习笔记8,session管理,事务控制
Hibernate的事务管理 事务(Transaction)是工作中的基本逻辑单位,可以用于确保数据库能够被正确修改,避免数据只修改了一部分而导致数据不完整,或者在修改时受到用户干扰。作为一名软件设计师,必须了解事务并合理利用,以确保数据库保存正确、完整的数据。数据库向用户提供保存当前程序状态的方法,叫事务提交(commit);当事务执行过程中,使数据库忽略当前的状态并回到前面保存的状态的方法叫...原创 2018-04-13 15:58:09 · 422 阅读 · 0 评论