
Hibernate
Hibernate是一个开放源代码的对象关系映射框架
T_P_F
这个作者很懒,什么都没留下…
展开
-
Hibernate(11)_基于外键的双向1对1
一、基于外键的双向1对1对于基于外键的1-1关联,其外键可以存放在任意一边,在需要存放外键一端,增加many-to-one元素。为many-to-one元素增加unique=“true” 属性来表示为1-1关联 另一端需要使用one-to-one元素,该元素使用 property-ref 属性指定使用被关联实体主键以外的字段作为关联字段1.实体类 部门类(Department .j...原创 2018-02-16 23:30:11 · 291 阅读 · 0 评论 -
Hibernate(12)_基于主键的双向1对1
一、基于主键的双向1对1 1.介绍:基于主键的映射策略:指一端的主键生成器使用 foreign 策略,表明根据”对方”的主键来生成自己的主键,自己并不能独立生成主键. <param> 子元素指定使用当前持久化类的哪个属性作为 “对方”采用foreign主键生成器策略的一端增加 one-to-one 元素映射关联属性,其one-to-one属性还应增加 constrained=...原创 2018-02-16 23:53:23 · 262 阅读 · 0 评论 -
Hibernate(6)关联关系_单向n对1
1.单向 n-1 关联只需从 n 的一端可以访问 1 的一端2.实体类 n端:Order.java public class Order { private Integer orderId; private String orderName; //在n端的实体类中有1端的类型的属性 private Customer customer; //省略...原创 2018-02-12 12:06:37 · 239 阅读 · 0 评论 -
Hibernate关系映射时出现的问题
在学习Hibernate框架的关系映射时,遇到了一个问题: INFO: HHH000422: Disabling contextual LOB creation as connection was null在网上找了一下原因,以下是网上找的原文:毕竟hibernate是有名的ORM框架,所以还是学着用一用,结果还是出了不少问题,文档啊文档,你就不能及时更新么。首先在创建一个全局的Se转载 2018-01-19 21:09:18 · 581 阅读 · 0 评论 -
Hibernate(1)基本知识
hibernate初步 1.概述 ①hibernate是java应用和关系数据库之间的桥梁,是一个开源的对象关系映射框架,可用来把对象模型表示的java对象 映射到关系型数据库表中去。 ②hibernate不仅管理java对象到数据库的映射,还提供数据查询和获取数据的方法,极大的减少了开发时人工使用SQL和JDBC 处理数据的时间。 2.hibernate优势原创 2017-12-31 23:17:18 · 300 阅读 · 0 评论 -
Hibernate(2)映射文件Xxx-hbm.xml
1.Hibernate映射文件Xxx-hbm.xml ①POJO 类和关系数据库之间的映射可以用一个XML文档来定义。通过 POJO 类的数据库映射文件,Hibernate可以理解持久化类和数据表之间的对应关系,也可以理解持久化类属性与数据库表列之间的对应关系,在运行时 Hibernate 将根据这个映射文件来生成各种 SQL 语句,映射文件的扩展名为 .hbm.xml原创 2018-01-23 14:23:25 · 275 阅读 · 0 评论 -
Hibernate(3)配置文件hibernate.cfg.xml
5.配置文件 Hibernate 配置文件主要用于配置数据库连接和 Hibernate 运行时所需的各种属性,每个 Hibernate 配置文件对应一个 Configuration 对象 Hibernate配置文件可以有两种格式: ①hibernate.properties ②hibernate.cfg.xml hibernate.cf原创 2018-01-23 14:27:22 · 255 阅读 · 0 评论 -
Hibernate(4)简单的HelloWorld
一个HelloWorld的案例public class HelloWorld { @Test public void test() { //1.创建SessionFactory对象 SessionFactory sessionFactory = null; //1.1.创建Configuration对象,对应Hibernat原创 2018-01-23 14:47:57 · 246 阅读 · 0 评论 -
Hibernate(5)session的方法
1. Session缓存 Session缓存(Hibernate一级缓存),在 Session 接口的实现中包含一系列的 Java 集合, 这些 Java 集合构成了 Session 缓存。只要 Session 实例没有结束生命周期, 且没有清理缓存,则存放在它缓存中的对象也不会结束生命周期。Session 缓存可减少 Hibernate 应用程序访问数据库的频率。两次获取同一个对象: ①原创 2018-01-23 15:03:07 · 1016 阅读 · 0 评论 -
Hibernate(7)关联关系_单向1对n
1.单向一对多(@OneToMany)关联是比较少用的(一般用双向一对多代替)。 2.实体类: 1端:Publishers.javapublic class Publishers { private Integer id; private String Name; //集合属性 private Set bks = new HashSet<>...原创 2018-02-12 16:46:55 · 266 阅读 · 0 评论 -
Hibernate(8)_单向n对n
1.n-n 的关联必须使用连接表 与1-n映射类似,必须为set集合元素添加 key 子元素,需要指定中间表 2.实体类 Category.javapublic class Category { private Integer id; private String name; private Set<Item> item = new HashS...原创 2018-02-13 10:39:31 · 229 阅读 · 0 评论 -
Hibernate(9)_双向n对n
1.概述 ①双向 n-n 关联需要两端都使用集合属性 ②双向n-n关联必须使用连接表 ③集合属性应增加 key 子元素用以映射外键列, 集合元素里还应增加many-to-many子元素关联实体类 ④在双向 n-n 关联的两边都需指定连接表的表名及外键列的列名. 两个集合元素 set 的 table 元素的值必须指定,而且必须相同。set元素的两个子元素:key 和 many-to-many...原创 2018-02-13 12:24:53 · 271 阅读 · 0 评论 -
Hibernate(10)_双向n对1(双向1对n)
1.双向 1-n 与 双向 n-1 是完全相同的两种情形,这里使用双向多对一来演示 双向 1-n 需要在 1 的一端可以访问 n 的一端, 反之依然. 出版社和图书的关系:Publishers——Books 2.实体类 n端 Books.javapublic class Books { private Integer Id; private String Title...原创 2018-02-16 23:06:25 · 417 阅读 · 0 评论 -
Hibernate非主键关联
非主键关联,我们进行外键关联时,通常使用的是主键,但有时候需要使用到其他列时可以通过以下方法设置:注解中:@JoinColumn(name="city", referencedColumnName="CITY_Name") 其中name属性为当前实体的属性,referencedColumnName属性指定要关联的列映射文件中: 在N方的<many-to-one>节点中设置一下...原创 2018-04-25 13:51:51 · 874 阅读 · 0 评论