`
tansitongba
  • 浏览: 503457 次
文章分类
社区版块
存档分类
最新评论

Follow Me:深入浅出学习Hibernate五:Hibernate关联映射多对一

 
阅读更多

引入

Hibernate是面向对象思维来转换成数据库关系模型。当我们用面向对象思维考虑问题的时候我们就应该考虑如何生成映射关系。如何生成一个符合我们心意的数据表。下面我们进行一一解答。

关联映射,就是将关联关系映射到数据库中,所谓的关联关系在对象模型在内存中的一个或多个引用,这是一个比较简单的映射,本文以用户和组的关系做说明。

关系模型


一个用户对应一个组,一个组对应多个用户,这就是一个多对一个模型。


用例图


此图描述了模型关系,在“多”的一端持有对“一”的一端的应用


数据库模型


多对一关联映射原理:在多的一端加入一个外键,指向一的一端

在多的一端采用如下标签映射:

<many-to-one name="group"column="groupid"/>

其实:<many-to-one name="group" column="groupid"/>实际就是User的一个外键

可能出现的问题:在执行数据录入是,首先应该save实体t_group数据,这样就可以避免状态的不一致。

总结

多对一时在多的一端加入一个外键执行一的一端。

下一讲继续映射关系的讲解,一对一,一对多和多对多。


分享到:
评论

相关推荐

    圆梦小车FollowMe全集

    "圆梦小车FollowMe全集"是一套专注于智能...无论你是对机器人技术充满热情的初学者,还是寻求实践经验的专业人士,"圆梦小车FollowMe全集"都将为你提供丰富的学习资源,帮助你在智能移动机器人的世界中实现自己的梦想。

    followme:RoboCup @ home SPL中的Followme代码

    followme(靛蓝)-0.0.1-0 通过在Thu, 02 Jul 2015 05:33:48 -0000运行/usr/bin/bloom-release --rosdistro indigo --track indigo followme ,将followme存储库中的软件包发布到了indigo发行版中。 followme...

    寻迹小车 FollowMe 项目

    "寻迹小车 FollowMe 项目"是一个基于C语言编程的智能小车开发项目,旨在实现小车能够自动追踪预设路径或者跟随特定目标移动。在这个项目中,开发者需要掌握C语言的基础语法以及一些高级特性,同时理解嵌入式系统的...

    Follow-Me:深度学习架构可帮助无人机瞄准并关注人们

    $ git clone https://github.com/BrunoEduardoCSantos/Follow-Me.git 安装依赖项 您需要安装Python 3和Jupyter Notebooks才能执行此项目。 如果还没有安装的话,最好的方法是将Anaconda与一起使用。 如果出于某种...

    ardrone_followme:ROS-stack 来制作一个跟随一个人的 AR.Drone。 基于AutonomyLabardrone_autonomy

    ardrone_followme ROS-stack 来制作一个跟随一个人的 AR.Drone。 使用 AutonomyLab/ardrone_autonomy、ardrone_driver 和 ardrone_joystick。

    FollowMe:android 项目 - 该应用程序提供跟踪和紧急警报服务

    "FollowMe"是一款基于Android平台的应用程序,旨在为用户提供实时跟踪和紧急报警功能,以增强个人安全保障。本文将深入探讨这款应用背后的开发技术,主要围绕Java编程语言进行讲解。 一、应用概述 "FollowMe"是一款...

    FollowMe轻博客

    "FollowMe轻博客"是一个基于面向对象编程和MVC(Model-View-Controller)设计模式构建的博客系统。这个系统的主要特点是结构清晰、易于维护和扩展,特别适合那些希望快速搭建个人博客或轻型社交平台的用户。"仿点点...

    SkyEye仿真Follow me

    ### SkyEye仿真Follow Me 关键知识点 #### 一、SkyEye简介 - **定义与目标**:SkyEye是一款开源的嵌入式系统仿真工具,旨在为开发者提供一个无需实际硬件即可进行嵌入式系统开发与研究的平台。其主要目标是在Linux...

    DEWI PROJECT_FOLLOWME_arduino_Microcontroller_源码

    《DEWI PROJECT_FOLLOWME_arduino_Microcontroller_源码》项目是基于Arduino微控制器实现的“Follow Me”(跟我走)程序,适用于自动购物车或类似应用。该项目旨在通过编程让设备跟随特定信号源移动,比如一个携带...

    独立微博Follow5:30天内将暂停所有服务运营.docx

    Follow5,一个曾经备受关注的独立微博平台,于2021年11月4日宣布了一项重大决定,即在接下来的30天内暂停所有服务运营。这个消息由其运营总经理毕杨通过个人新浪微博账号发布,引发了业界的关注。毕杨指出,除了服务...

    Follow-me-Learning-C.zip_Follow_ Follow

    总的来说,这份"Follow-me-Learning-C.zip"压缩包为学习者提供了一条清晰的学习路径,通过系统的课程设计和实例讲解,帮助学习者逐步掌握C语言的核心概念和技术,无论是对于初学者还是有经验的程序员,都是一份宝贵...

    followme:使用 Rails 4 + RSpec + Cucumber 进行行为驱动开发

    $ git clone git@github.com:krahman/followme.git 安装 gem $ bundle install --path vendor/bundle 迁移数据库 $ bundle exec rake db:migrate 运行用户对象单元测试 RSpec $ bundle exec rspec spec/models/...

    浅谈:nofollow标签的使用与分析

    nofollow是链接的HTML标签属性,站长和SEO人员可以通过这个属性来告诉搜索引擎不要追踪此网页上的链接,或不要追踪某个指定的链接, 这些或这个链接并不是本网站所推荐的...链接一旦使用nofollow之后,就不会导出权重了

    基于Java的Follow Me运动教练应用设计源码

    本项目为“基于Java的Follow Me运动教练应用设计源码”,包含61个文件,其中包括54个Java源文件、4个PNG图像文件、1个Gitignore忽略配置文件、1个XML配置文件以及1个YAML配置文件。该应用旨在为用户提供个性化的运动...

    jquery-scroll-follow.rar_Follow_ Follow

    通过以上讲解,我们对jQuery Scroll Follow插件有了全面的了解。在实际开发中,可以根据项目需求灵活运用这个插件,为用户提供更加便捷、舒适的浏览体验。同时,也可以结合其他jQuery插件或CSS3技术,进一步增强页面...

Global site tag (gtag.js) - Google Analytics