关于hibernate annotation 的manyToMany的映射的疑问

问题描述

我现在用hibernateannotation写个manyToMany的映射,然后我连接表有自己的属性怎么弄?不能用joinTable了吧.请大家帮忙解答!谢谢!

解决方案

解决方案二:
<?xmlversion="1.0"encoding="utf-8"?><!DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><!--MappingfileautogeneratedbyMyEclipsePersistenceTools--><hibernate-mapping><classname="pojo.Job"table="job"schema="dbo"catalog="study"><idname="oid"type="java.lang.Integer"><columnname="oid"/><generatorclass="native"/></id><propertyname="jobname"type="java.lang.String"><columnname="jobname"length="50"/></property><setname="depts"table="department_job"><keycolumn="jobid"></key><many-to-manyclass="pojo.Department"column="deptid"></many-to-many></set></class></hibernate-mapping>

<?xmlversion="1.0"encoding="utf-8"?><!DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/HibernateMappingDTD3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><!--MappingfileautogeneratedbyMyEclipsePersistenceTools--><hibernate-mapping><classname="pojo.Department"table="Department"schema="dbo"catalog="study"><idname="oid"type="java.lang.Integer"><columnname="oid"/><generatorclass="native"/></id><propertyname="parentoid"type="java.lang.Integer"><columnname="parentoid"/></property><propertyname="deptName"type="java.lang.String"><columnname="deptName"length="20"/></property><propertyname="phone"type="java.lang.String"><columnname="phone"length="20"/></property><propertyname="email"type="java.lang.String"><columnname="email"length="100"/></property><propertyname="fax"type="java.lang.String"><columnname="fax"length="20"/></property><propertyname="manager"type="java.lang.Integer"><columnname="manager"/></property><propertyname="address"type="java.lang.String"><columnname="address"length="100"/></property><propertyname="zipcode"type="java.lang.String"><columnname="zipcode"length="10"/></property><propertyname="description"type="java.lang.String"><columnname="description"length="100"/></property><setname="jobs"table="department_job"><keycolumn="deptid"></key><many-to-manyclass="pojo.Job"column="jobid"></many-to-many></set><setname="emps"cascade="all"inverse="false"><keycolumn="deptid"></key><one-to-manyclass="pojo.Employee"/></set></class></hibernate-mapping>

解决方案三:
我想如果连接表有自己的属性,应该单独建Class吧不好意思,我也不太清楚,跟着学习

时间: 2024-09-02 03:03:33

关于hibernate annotation 的manyToMany的映射的疑问的相关文章

Hibernate Annotation使用经验总结

在向大家详细介绍使用Hibernate Annotation之前,首先让大家了解下Hibernate的配置依赖于外部 XML 文件,然后全面介绍使用Hibernate Annotation. 在过去几年里,Hibernate不断发展,几乎成为Java数据库持久性的事实标准.它非常强大.灵活,而且具备了优异的性能.在本文中,我们将了解如何使用Java 5 注释来简化Hibernate代码,并使持久层的编码过程变得更为轻松. 传统上,Hibernate的配置依赖于外部 XML 文件:数据库映射被定义

急:SSH+Oracle||用hibernate进行多对多关系映射 出错 违反唯一性约束 奇怪

问题描述 Oracle 9i,使用hibernate,多对多的关系映射,级联操作的时候,出错了.我的数据库中表的主键是采用自增长的方式,序列+触发器进行的自增长.实体类与表的映射文件,如下<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.s

Java的Hibernate框架中的基本映射用法讲解_java

Hibernate进行了分类整合发现其实Hibernate分为三大部分:核心对象.映射.HQL,这三大部分开发过程中最常使用,前几篇讨论了核心对象及对象之间的转换方法,接下来讨论Hibernate的映射使用方法.   Hibernate一个重要的功能就是映射,它能够在对象模型和关系模型之间转换,是面向对象编程思想提倡使用的,使用映射程序开发人员只需要关心对象模型中代码的编写.对象和关系数据库之间的映射通常是由XML文档来定义的.这个映射文档被设计为易读的,并且可以手动修改.这种映射关系我总结为下

hibernate的底层是先映射后搜索,还是先搜索后映射?

问题描述 最近在做级联表的时候,发觉hibernate能用级联表映射的类对象中的一个属性进行排序,于是就有了这个想法,在底层,hibernate是先把数据库里的数据全部映射成对象后再展开搜索,还是其实仍然是sql搜索后组装成对象?如果是前者的话,几kw数据的表映射起来不是很慢? 解决方案 个人判断应该是一种策略,帮你把hql语句根据orm映射的关系,将对象名转换成表名,拼装成所连接的数据库的最合理的sql语句,执行查询,再进行对象封装.所以当你配置了显示sql时,是可以看到hibernate翻译

eclipse + JBoss 5 + EJB3开发指南(9):实现Entity Bean的多对多(many-to-many)映射

本文为原创,如需转载,请注明作者和出处,谢谢! 上一篇:eclipse + JBoss 5 + EJB3开发指南(8):实现Entity Bean的一对多(one-to-many)映射     在EJB3中需要使用@ManyToMany对封装多对多关系的字段或getter方法进行注释.先看看下面的表: 图1  t_addresses表       t_addresses表和t_customers表是多对多的关系.需要使用一个关联表来描述这种关系,关联表的结构如下图所示. 图2  t_custom

Hibernate(JPA)多对多(ManyToMany)关联映射不完美之处

近来,在做的一个NewsMS项目中,需要用到多对多关联映射,以下是项目中用到的两个实体类:用户类User和角色类Role,它们之间是多对多的关系. //用户表 @Entity @Table(name="rong_user") public class User{ //省略其它内容 private Set<Role> roles = new LinkedHashSet<Role>(); //角色集合 @ManyToMany(cascade = {CascadeTy

【HIBERNATE框架开发之七】HIBERNATE使用ANNOTATION中各种关系映射的CRUD(增删改查)&amp;&amp;集合映射&amp;&amp;继承映射

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/hibernate/822.html       首先对于Annotation中CRUD的C(Create)操作:-------- 假设 :   User (MonyToOne)       Group OK,那么有如下 Junit Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Conf

Hibernate及JPA 对象关系映射的简单映射策略

简单映射 近年来 ORM(Object-Relational Mapping,对象关系映射,即实体对象和数据库表的映射)技术市场 热闹非凡,各种各样的持久化框架应运而生,其中影响最大的是 Hibernate 和 Toplink.Sun 公司在充分吸收现有的优秀 ORM 尤其是 Hibernate 框架设计思想的基础上,制定了新的 JPA(Java Persistence API)规范,对现在乱象丛生的持久 化市场带来一个标准,大有统一持久化市场的气势.JPA 是通过 JDK5.0 注解或 XML

详解Java的Hibernate框架中的set映射集与SortedSet映射_java

Set集合Set是一个java集合不包含任何重复的元素.更正式地说,Set不包含任何元素对e1和e2,使得e1.equals(e2),和至多一个空元素.所以被添加到一组对象必须实现equals()和hashCode()方法,使Java可以判断任何两个元素/对象是否是相同的. 集被映射到与映射表中<set>元素,并在java.util.HashSet中初始化.可以使用Set集合在类时,有一个集合中不需要重复的元素. 定义RDBMS表: 考虑一个情况下,我们需要我们的员工记录存储在EMPLOYEE