实体类

1 public class Student {
2 private int id;
3 private String name;
4 private Set<Score> scores = new HashSet<Score>(); //一对多
5 }
1 public class Score {
2 private int id;
3 private Student student; //1对1
4 private Course course; //1对1
5 private Double score;
6 }
1 public class Course {
2 private int id;
3 private String name;
4 private Set<Score> scores = new HashSet<Score>(); //一对多
5 }

方式一映射关系(多对一)有3个配置文件

 <hibernate-mapping package="entity">
<class name="Course">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<set name="scores" inverse="true">
<key column="courseId"/>
<one-to-many class="Score"/>
</set>
</class>
</hibernate-mapping>
 <hibernate-mapping package="entity">
<class name="Score">
<id name="id">
<generator class="native"/>
</id>
<property name="score"/>
<many-to-one name="student" column="studentId" not-null="true"/>
<many-to-one name="course" column="courseId" not-null="true" lazy="false"/>
</class>
</hibernate-mapping>
 <hibernate-mapping package="entity">
<class name="Student">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/> <set name="scores" inverse="true" lazy="false">
<key column="studentId"/>
<one-to-many class="Score"/>
</set>
</class>
</hibernate-mapping>

方式二配置(只有两个文件)

 <hibernate-mapping package="entity">
<class name="Student">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<set name="scores" lazy="true" table="Score">
<key column="studentId"/>
<!-- 组成元素映射 -->
<composite-element class="Score">
<!-- Score类中引用当前实体类的属性名 -->
<parent name="student"/>
<property name="score"/>
<!-- Score类与Course类的多对一关联 -->
<many-to-one name="course" class="Course" column="courseId"/>
</composite-element>
</set>
</class>
</hibernate-mapping>
 <hibernate-mapping package="entity">
<class name="Course">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<set name="scores" lazy="true" table="Score" inverse="true">
<key column="courseId"/>
<composite-element class="Score">
<parent name="course"/>
<property name="score"/>
<many-to-one name="student" class="Student" column="studentId" foreign-key="studentId"/>
</composite-element>
</set>
</class>
</hibernate-mapping>

hibernate映射(学生-科目-成绩)的更多相关文章

  1. hibernate实现学生-课程-成绩

    1.实体类Student package com.test.model; import javax.persistence.Entity; import javax.persistence.Gener ...

  2. hibernate映射的 关联关系:有 一对多关联关系,一对一关联关系,多对多关联关系,继承关系

    hibernate环境配置:导包.... 单向n-1:单向 n-1 关联只需从 n 的一端可以访问 1 的一端 <many-to-one> 元素来映射组成关系: name: 设定待映射的持 ...

  3. [转]Hibernate映射的基本操作

       ++YONG原创,转载请注明http://blog.csdn.net/qjyong/article/details/1829672          Hibernate映射主要是通过对象关系映射 ...

  4. 【SSH系列】Hibernate映射 -- 一对多关联映射

        映射原理       一对多关联映射和多对一关联映射的映射原理是一样一样的,所以说嘛,知识都是相通的,一通百通,为什么说一对多关联映射和多对一关联映射是一样的呢?因为她们都是在多的一端加入一个 ...

  5. 【mysql经典题目】科目成绩都大于80分\每个科目的第一名\总成绩排名

    参考:http://blog.csdn.net/lifushan123/article/details/44948135 1.查询出科目成绩都大于80分的学生的名字? drop table if EX ...

  6. Hibernate映射--基本类映射和对象关系映射(转)

    原文地址:http://blog.csdn.net/lovesummerforever/article/details/20901011   尊重原创,请访问原网址 回想一些我们在没有学习ssh的时候 ...

  7. Hibernate映射文件详解(News***.hbm.xml)二

    转自 http://blog.csdn.net/a9529lty/article/details/6454924 一.hibernate映射文件的作用: Hibernate映射文件是Hibernate ...

  8. hibernate映射文件

    Hibernate的持久化类和关系数据库之间的映射通常是用一个XML文档来定义的.该文档通过一系列XML元素的配置,来将持久化类与数据库表之间建立起一一映射.这意味着映射文档是按照持久化类的定义来创建 ...

  9. Hibernate映射文件如何配置触发器

    Hibernate映射文件之触发器生成(generated属性.database-object元素) (2013-02-27 12:28:49) 转载▼ 标签: it 分类: JAVA学习笔记 这里分 ...

随机推荐

  1. jQuery使用(四):DOM操作之查找兄弟元素和父级元素

    查找兄弟元素 向下查找兄弟元素 next() nextAll() nextUntil() 向上查找兄弟元素 prev() prevAll() prevUntil() 查找所有兄弟元素 siblings ...

  2. springBoot整合mybatis、jsp 或 HTML

    springBoot整合mybatis.jsp Spring Boot的主要优点: 1:  为所有Spring开发者更快的入门: 2:  开箱即用,提供各种默认配置来简化项目配置: 3:  内嵌式容器 ...

  3. cxf与spring的整合

    cxf与spring的整合: 一:服务端相关配置(配置好后启动tomocat就自动发布了接口,浏览器打开验证下) 1:导入cxf以及spring的相关jar包; 2:在web.xml中增加配置: 代码 ...

  4. 用IntelliJ IDEA搭建第一个SpringBoot例子

    前言:最近把IntelliJ IDEA弄好了,也偶然接触到了springboot这个新的微服务框架.发现这个框架简单但也有一些不足.听说springboot可以在140个字符内发布一个web应用.所以 ...

  5. Spring boot 连接Redis实现HMSET操作

    这篇文章记录使用spring-boot-starter-redis访问Redis.Redis相关的的配置文件放在Resources目录下的application.yml文件中,如下所示: spring ...

  6. CodeMirror 在线代码编辑器

    像百度编辑器插件部分.菜鸟教程示例等高德地图都在使用,这里也记录一下: CodeMirror是一个用于编辑器文本框textarea代码高亮javascript插件...... vue 中使用 参见:h ...

  7. HTTP 响应类型 ContentType 对照表

    Ø  前言 1.   下面是 HTTP 响应类型 ContentType 的可选值,有备无患先保存一下.摘自:https://wiki.selfhtml.org/wiki/MIME-Type/%C3% ...

  8. Spring使用事务增加的注解实现方

    以下是我的文件结构 步骤1:配置数据源 <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDa ...

  9. hashMap源码分析1--翻译

    * Hash table based implementation of the <tt>Map</tt> interface. This* implementation pr ...

  10. loj 6436 PKUSC2018 神仙的游戏

    传送门 好妙蛙 即串\(s\)长度为\(n\)首先考虑如果一个长度为\(len\)的\(border\)存在,当且仅当对所有\(i\in[1,len],s[i]=s[n-len+i]\),也就是所有模 ...