Hibernate
文章平均质量分 86
韦轩
软件工程
展开
-
Hibernate HelloWorld-01
一、什么是hibernate?1、它是连接 Java 应用程序和关系数据库的中间件。2、它对 JDBC API 进行了封装,负责Java对象的持久化。3、在分层的软件架构中它位于持久化层,封装了所有数据访问细节,使业务罗基层可以专注于实现业务逻辑。4、它是一种 ORM(Object-Relation Mapping 对象-关系映射)工具,能够建立面向对象的域模型和关系模型的映射原创 2015-05-16 10:23:12 · 398 阅读 · 0 评论 -
Hibernate HelloWorld-12 HQL连接
一、HQL迫切左外连接LEFT JOIN FETCH 关键字表示迫切左外连接检索策略.list() 方法返回的集合中存放实体对象的引用, 每个 Department 对象关联的 Employee 集合都被初始化, 存放所有关联的 Employee 的实体对象.查询结果中可能会包含重复元素, 可以通过一个 HashSet 来过滤重复元素或者distinct关键字/原创 2015-06-03 14:19:08 · 500 阅读 · 0 评论 -
Hibernate HelloWorld-11 HQL 检索方式
一、HQL检索方式HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在 Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. 它有如下功能:在查询语句中设定各种查询条件支持投影查询, 即仅检索出对象的部分属性支持分页查询支持连接查询支持分组查询, 允许使用 HAVING 和 GRO原创 2015-06-02 21:35:10 · 627 阅读 · 0 评论 -
Hibernate HelloWorld-13 hibernate 二级缓存
一、hibernate二级缓存1、缓存(Cache): 计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如硬盘上的文件或者数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝。缓存的物理介质通常是内存。2、Hibernate中提供了两个级别的缓存第一级别的缓存是 Session 级别的缓存原创 2015-06-03 19:20:20 · 559 阅读 · 0 评论 -
Hibernate HelloWorld-09 多对多的映射
一、单项多对多的映射1、n-n 的关联必须使用连接表 CATEGORIES_ITEMS 2、与 1-n 映射类似,必须为 set 集合元素添加 key 子元素,指定 CATEGORIES_ITEMS 表中参照 CATEGORIES 表的外键为 CATEGORIY_ID. 3、与 1-n 关联映射不同的是,建立 n-n 关联时, 集合中的元素使用 many-to-many.原创 2015-06-02 14:41:20 · 537 阅读 · 0 评论 -
Hibernate HelloWorld-10 映射继承关系
一、继承映射对于面向对象的程序设计语言而言,继承和多态是两个最基本的概念。Hibernate 的继承映射可以理解持久化类之间的继承关系。例如:人和学生之间的关系。学生继承了人,可以认为学生是一个特殊的人,如果对人进行查询,学生的实例也将被得到。hibernate三种继承映射策略:使用 subclass 进行映射:将域模型中的每一个实体对象映射到一个独立的表中,也就是说不原创 2015-06-02 16:23:45 · 532 阅读 · 0 评论 -
Hibernate HelloWorld-06 单向多对一的映射关系
一、单向多对一的映射关系1、多个订单对应一个customer2、customer : 13、order:多4、方向:多个order对应一个customer5、只需要在订单表里面引用客户id即可,而不是在客户订单里面引用oder集合,实际在表中的关系是:order表里面有一个外键,这个外键是customer表的customerid二、项目文件原创 2015-06-01 20:29:27 · 563 阅读 · 0 评论 -
Hibernate HelloWorld-14 批量操作
一、管理 Session1、Hibernate 自身提供了三种管理 Session 对象的方法Session 对象的生命周期与本地线程绑定Session 对象的生命周期与 JTA 事务绑定Hibernate 委托程序管理 Session 对象的生命周期2、在 Hibernate 的配置文件中, hibernate.current_session_context_class 属性用于原创 2015-06-03 23:05:42 · 798 阅读 · 0 评论 -
Hibernate HelloWorld-07 双向多对一的映射关系
一、双向一对多关系1、从 Order 到 Customer 的多对一 双向关联,需要在Order 类中定义一个 Customer 属性, 而在 Customer 类中需定义存放 Order 对象的集合属性。2、双向 1-n 与 双向 n-1 是完全相同的两种情形3、双向 1-n 需要在 1 的一端可以访问 n 的一端, 反之依然二、注意1、当 Ses原创 2015-06-01 22:26:38 · 515 阅读 · 0 评论 -
Hibernate HelloWorld-02 session概述
一、什么是session?Session 接口是 Hibernate 向应用程序提供的操纵数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载 Java 对象的方法Session 具有一个缓存, 位于缓存中的对象称为持久化对象, 它和数据库中的相关记录对应. Session 能够在某些时间点, 按照缓存中对象的变化来执行相关的 SQL 语句, 来同步更新数据库, 这一过原创 2015-05-16 13:11:24 · 503 阅读 · 0 评论 -
Hibernate HelloWorld-05 对象关系映射文件
一、POJO 类和数据库的映射文件*.hbm.xmlPOJO 类和关系数据库之间的映射可以用一个XML文档来定义。通过 POJO 类的数据库映射文件,Hibernate可以理解持久化类和数据表之间的对应关系,也可以理解持久化类属性与数据库表列之间的对应关系在运行时 Hibernate 将根据这个映射文件来生成各种 SQL 语句映射文件的扩展名为 .hbm.xml二、映射原创 2015-05-16 20:53:14 · 698 阅读 · 0 评论 -
Hibernate HelloWorld-04 Hibernate 的配置文件
一、Hibernate 配置文件主要用于配置数据库连接和 Hibernate 运行时所需的各种属性每个 Hibernate 配置文件对应一个 Configuration 对象Hibernate配置文件可以有两种格式:hibernate.propertieshibernate.cfg.xml二、hibernate.cfg.xml的常用属性1、JDBC 连接属性原创 2015-05-16 19:43:30 · 549 阅读 · 0 评论 -
Hibernate HelloWorld-03 session核心方法
一、save方法Session 的 save() 方法使一个临时对象转变为持久化对象Session 的 save() 方法完成以下操作:把 News 对象加入到 Session 缓存中, 使它进入持久化状态选用映射文件指定的标识符生成器, 为持久化对象分配唯一的 OID. 在 使用代理主键的情况下, setId() 方法为 News 对象设置 OID 使无效的.计划执行一条原创 2015-05-16 14:20:11 · 616 阅读 · 0 评论 -
Hibernate HelloWorld-08 一对一的映射
一、采用外键的一对一双向映射模型1、基于外键的一对一双向关联关系 部门经理属于一个部门 一个部门只能有一个部门经理 department的外键加上 unique约束2、在department实体类和manager实体类中都有彼此的引用3、外键可以放在任意一边4、在需要存放外键一端,增加many-to-one元素。为many-to-one元素增加unique=“true”原创 2015-06-02 13:17:09 · 488 阅读 · 0 评论