hibernate中*.hbm.xml配置文件的各种映射关系配置方法(多对一,多对多)

多对一:

多个用户对应一个部门,是多对一的关系,要在多方配,即在用户的hbm.xml文件中配

<many-to-one name="department" class="Department" column="department_Id" />

 name="department"   //写出在用户的Java文件中定义的“一方”变量名

class="Department"  //写出“一方”的类型名

column="department_Id"   //在数据库中对应的字段名

 

多对多:

一个用户可以有多个角色,一个角色可以被多个用户所拥有,是多对多的关系(三张表,user,role,user_role),不具体要求必须在用户还是角色的配置文件中进行配置,两个都可以,下面为在用户的hbm.xml文件中配

 

<set name="roles" table="user_role"><key column="user_Id" /><many-to-many class="Role" column="role_Id" /></set>

 name="roles"   //写出在用户的Java文件中定义的另一个“多方”变量名

table="user_role" //数据库中中间表的名字,中间表不用新建类

key column="user_Id  //因为是在用户的hbm.xml文件中配置的,所以可以直接配置中间表中关于user的外键

<many-to-many class="Role" column="role_Id" />  //另一个“多方”的类型名和对应中间表的外键

 

转载于:https://www.cnblogs.com/1443188449qq/p/8832444.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/466149.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL学习笔记(二)—— MySQL的安装

MySQL可通过直接执行已编译版本安装&#xff0c;这个很简单&#xff0c;无须赘述&#xff0c;有时候&#xff0c;可能需要在安装时进行配置和编译&#xff0c;下面讨论一下相关的配置选项&#xff1a;1&#xff09; 配置的优先级配置选项的优先级如下&#xff1a;命令行、配置…

C++ —— C++三大分支结构(顺序、选择、循环)

C ——三大结构&#xff08;顺序、选择、循环&#xff09; 一、顺序结构的几种常用语句 1、声明语句 程序中所有由程序员给出的名字标识符&#xff0c;包括变量、常量、对象、类、类型、函数、参数等都要在使用前进行说明或定义。一般地&#xff0c;程序中的说明语句并不单纯说…

三极管的“非教科书式”解析,什么正偏、反偏都统统滚蛋!

什么正偏&#xff0c;反偏都统统滚蛋&#xff01;&#xff01;&#xff01;❤三极管有三个工作状态&#xff1b;截止、放大、饱和&#xff1b;放大状态很有学问也很复杂&#xff0c;多用于集成芯片&#xff0c;比如运放&#xff0c;现在不讨论&#xff1b;其实对信号的放大我们…

CListBox用法总结

CListBox用法总结 用法 属性Style Selection Single — 单选 Multiple — 多选(LBS_MULTIPLESEL) None — 不可选(LBS_NOSEL) Sort 对应Style: LBS_SORT Insert Item int AddString(LPCTSTR lpszItem); int InsertString(int nIndex, LPCTSTR lpszItem); Delete Item int Del…

django 模板继承与重写

1、模板的继承一般用在别人给我们做好的HTML页面&#xff0c;当我们发现有很多的页面都具有相同的部分&#xff0c;这会我们应该考虑怎么能把他们相同的部分给提取出来&#xff0c;提取出来的部分我们作为一个单独的HTML文件叫做base.html&#xff0c;其余不同的部分我们在base…

SUN平台,光纤共享存储互斥失败导致的数据灾难恢复

作者&#xff1a;张宇&#xff0c;北亚数据恢复中心&#xff0c;转载请联系作者&#xff0c;如果实在不想联系作者&#xff0c;至少请保留版权&#xff0c;谢谢。[数据恢复故障描述]两台SPARC SOLARIS系统通过光纤交换机共享同一存储&#xff0c;本意是作为CLUSTER使用&#xf…

C++ —— C++类

C ——类 1、类 类是具有相同属性和行为的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和行为两个主要部分。 class Clock { public:void SetTime(int new_hour, int new_minute,int new_second);void ShowTime(); private:int hour, minute, se…

一行代码还能这么秀

老早就想写这篇文章了&#xff0c;因为我经常用用这个方法来装逼&#xff0c;今天终于要把这个装逼方法分享给大家了。我从来不会告诉别人我自己的微信公众号关注早就已经超过40万了。看下面的截图这张截图建议大家保存下&#xff0c;如果遇到不公的事情&#xff0c;你就跟他说…

原来你是这样的Promise

1. Promise简介 promise是异步编程的一种解决方案&#xff0c;它出现的初衷是为了解决回调地狱的问题。 打个比方&#xff0c;我需要&#xff1a; --(延迟1s)--> 输出1 --(延迟2s)--> 输出2 --(延迟3s)--> 输出3 通常写法&#xff1a; setTimeout(()> {console.log…

VS2015 vc++ 项目出现new.h找不到的错误

安装完 VS2015 后&#xff0c;直接新建项目->win32控制台->运行&#xff0c;结果报错&#xff01;"无法打开包括文件: “stdio.h”: No such file or directory”"lnk1104:无法打开文件 ucrtd.lib ”奇了怪了&#xff0c;stdio.h 和 ucrtd.lib 都是 VS 自带的头…

C#——image与byte数组的转换

image to byte[] MemoryStream msnew MemoryStream(); image.Save(ms,System.Drawing.Imaging.ImageFormat.Gif ); byte[] imagedatams.GetBuffer (); byte[] to imageMemoryStream ms new MemoryStream(imagedata);img Drawing.Image.FromStream(ms);转载于:https://www.cnb…

Linux Select

Linux Select 在Linux中&#xff0c;我们可以使用select函数实现I/O端口的复用&#xff0c;传递给 select函数的参数会告诉内核&#xff1a; •我们所关心的文件描述符 •对每个描述符&#xff0c;我们所关心的状态。(我们是要想从一个文件描述符中读或者写&#xff0c;还…

搞懂图像二值化算法

传统的机器视觉通常包括两个步骤&#xff1a;预处理和物体检测。而沟通二者的桥梁则是图像分割&#xff08;Image Segmentation&#xff09;[1]。图像分割通过简化或改变图像的表示形式&#xff0c;使得图像更易于分析。举个例子&#xff0c;食品加工厂新进了一批肉鸡&#xff…

vs2015无法打开包括文件:“winapifamily.h”

老项目是vs2003下的项目。升级vs2015后&#xff0c;调试运行报错 C:\Program Files (x86)\Windows Kits\8.0\Include\um\winsdkver.h(21): fatal error C1083: 无法打开包括文件:“winapifamily.h”: No such file or directory 在项目包含目录中包含了这个Windows Kits\8.0\…

JavaWeb无限级分销结构分析

在现实生活中我们经常遇到由推荐人注册&#xff0c;比如一个购物平台,用户A推荐用户B注册&#xff0c;那当B购买商品成功时&#xff0c;用户A就会拿到相应的提成。只要是用户A推荐的用户购买商品成功后&#xff0c;A用户都会拿到提成。 当用户B推荐了用户C&#xff0c;那当用户…

如何在Word里面自动生成目录

1、对整个文本进行排版处理&#xff1b; 2、先将第一个一级标题选中&#xff0c;再点击工具栏“字体”前“正文”的下拉菜单&#xff0c;选择“标题1”&#xff1b; 3、此时会在此行前出现一个黑点&#xff0c;表明此行已被设为目录项&#xff08;前方黑点不会被打印&#xff0…

一个风骚的C语言操作

有个小伙伴在我们的嵌入式交流群里发了类似下面的一张图&#xff0c;顿时引起一阵骚动&#xff0c;我把源代码再附上&#xff0c;main.c 如下&#xff1a;#include <stdio.h> #include <string.h>static char city_name[][20] { #include "city.h" };in…

VS2003升级VS2010修改

BUG1: fatal error C1189: #error: MFC does not support WINVER less than 0x0601. Ple 在StdAfx.h中把#define WINVER 0X0500 //为 Windows98 和 Windows 2000 及更新版本改变为适当的值。改为&#xff1a; #define _WIN32_WINNT 0x0601 BUG2: https://www.cnblogs.com/slo…

Linux poll

Linux poll poll提供的功能与select类似&#xff0c;不过在处理流设备时&#xff0c;它能够提供额外的信息。 1、函数原型#include <poll.h>int poll(struct pollfd fd[], nfds_t nfds, int timeout);2、函数参数&#xff1a;&#xff08;1&#xff09;fd&#xff1a;一个…

SQL Server表分区-水平分区

SQL Server表分区&#xff0c;sql server水平分区 转自&#xff1a;http://www.cnblogs.com/knowledgesea/p/3696912.html 根据时间的&#xff0c;直接上T-SQL代码的水平分区&#xff1a;https://www.xuebuyuan.com/1817312.html?tdsourcetags_pcqq_aiomsg什么是表分区 一般情…