【Hibernate学习】 ——ORM(三)】的更多相关文章

如需转载,请说明出处:http://www.cnblogs.com/gudu1/p/6895610.html Hibernate通过关系映射来表示数据库中表与表之间的关系,关系映射可以通过两种方式:配置文件映射和注解映射,本文主要讲解配置文件映射. 关系映射: 1.单向关联关系,表示只有一方维护关系,而另一方并不知道有这种关系,在解除和删除关联关系的时候也要在有外键方进行,否则会抛出异常,因为有外键的约束. 2.双向关联关系.双方都维护关系,无论在哪一方解除和删除关联关系,Hibernate都能…
序言 前面两节讲了hibernate的两个配置文件和hello world!.还有hibernate的一级缓存和三种状态,基本上hibernate就懂一点了,从这章起开始一个很重要的知识点,hibernate的关系映射.一对一.一对多.多对多的讲解.,希望你们能从中学到东西,我也从中巩固自己的知识 计划: one to many:单向一对多.many-to-one:单向多对一.双向一对多 这一篇文章讲完 many-to-many:下一篇 one-to-one:在下一篇 最后一篇:cascade和…
一.关系映射 实体类之间的关联映射以及表之间的关系是 ORM 的灵魂之处.对象间的关系的子集可以用下列四种方式解释.关联映射可以是单向的也可以是双向的.  映射类型 描述 Many-to-One 使用 Hibernate 映射多对一关系 One-to-One 使用 Hibernate 映射一对一关系 One-to-Many 使用 Hibernate 映射一对多关系 Many-to-Many 使用 Hibernate 映射多对多关系 1.多对一 1.映射文件 Product.hbm.xml 配置:…
一对多|多对一 表中的表达 实体中的表达 实体代码: package com.yyb.domain; import java.util.HashSet; import java.util.Set; public class Customer { /* * CREATE TABLE `cst_customer` ( `cust_id` BIGINT(32) NOT NULL AUTO_INCREMENT COMMENT '客户编号(主键)', `cust_name` VARCHAR(32) NOT…
Hibernate的查询方法(五种) 一.OID查询:按主键查询 --get( ) --load( ) 二.对象导航查询:通过已经查询到的联系人,得到起关联的对象 三.SQL查询 四.HQL查询(***) 1.String hql = “ 查询语句” Query query = session.createQuery( ) ; // 得到query对象 (1)简单查询 hql = “from Customer”;//查询Customer所有信息 List<Customer> list = qu…
1.1.1 Hibernate的关联关系映射:(多对多) 1.1.1.1 多对多的配置: 步骤一创建实体和映射: Student: public class Student { private Integer sid; private String sname; // 学生选择多门课程. private Set<Course> courses = new HashSet<Course>(); ... } Course: public class Course { private I…
一.多对多关系概述 以学生和课程之间的关系为例. 1.在多对多关系中涉及到的表有三张,两张实体表,一张专门用于维护关系的表. 2.多对多关系中两个实体类中应当分别添加对方的Set集合的属性,并提供set和get方法. 3.在配置映射文件的时候较一对多关系复杂. 二.映射文件 <set name="students" table="course_stu" cascade="save-update" inverse="true&quo…
1.1.1      Hibernate多对多关系的配置 1.1.1.1   创建表 l   用户表 CREATE TABLE `sys_user` ( `user_id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT '用户id', `user_code` varchar(32) NOT NULL COMMENT '用户账号', `user_name` varchar(64) NOT NULL COMMENT '用户名称', `user_password…
保存习惯代码 @Test public void saveTwoTableTest(){ Transaction transaction = null; try { transaction = session.beginTransaction();//创建session Customer customer=new Customer(); customer.setCustomerName("123"); //在Customer中设置了一对多关系 Order order=new Order…
转载请注明原文地址: 一:HQL 1:HQL语句格式:select from POJO类名 where 条件表达式 group by 属性 having 聚集函数 order by 属性 [其中,from子句是必备的,其他可以省略] 2:from子句的使用:检索对象 1)简单查询:from POJO类名:查询POJO表中所有记录,并返回一个对象集合 2)别名:from POJO类名 a_name:把查询对象冠以a_name别名 3:select子句的使用:自定义检索结果 1)查询对象的某属性组:…