Mapping Relationships with Hibernate

Mapping Relationships with Hibernate

Author: Trevor Page: Java Guru | Programmer | Teacher July 23, 2014 Duration: 55:48

In the past we have learned about database relationships, specifically the One-to-Many as well as the Many-to-Many and One-to-One and that was all good, great and grand…

But now I want to talk about how to create those same relationships inside of Hibernate.

Specifically, I want to focus on the One-to-Many relationship in Hibernate and how we go about mapping it out in our Java objects.

But before we do, a word on unidirectional and bidirectional relationships.

Unidirectional vs Bidirectional

In Hibernate, it's possible to map all three relationships that are available in a standard database, these include:

  • One-to-One
  • One-to-Many
  • Many-to-Many

But what Hibernate also includes is the ability to make EACH of those relationships either unidirectional or bidirectional.

This means that we can have a unidirectional One-to-One and a bidirectional One-to-One mapping, as well as a unidirectional One-to-Many and a bidirectional One-to-Many, as well as a unidirectional Many-to-Many and a bidirectional Many-to-Many relationship.

That's a lot of relationships!

So what exactly are unidirectional and bidirectional relationships?

Learn more on the show notes page via http://howtoprogramwithjava.com/session53


The How to Program with Java Podcast is a practical guide for anyone wanting to build software, from curious beginners to those looking to solidify their professional skills. Host Trevor Page, a seasoned Java guru and teacher, breaks down complex programming concepts into clear, manageable lessons you can apply immediately. You'll hear detailed walkthroughs on building applications, understanding core principles like object-oriented design, and navigating the tools of the trade. The discussions move beyond dry theory, focusing on the real-world logic and problem-solving that defines a career in software development. Whether you're aiming for a new job, tackling a personal project, or helping a child explore technology, this podcast provides a structured, conversational path forward. Each episode is crafted to demystify the process, translating technical jargon into plain English so you can focus on creating functional code. The tone is direct and encouraging, rooted in Trevor's experience as both a programmer and an educator. It’s a resource for building a tangible skill set, episode by episode, where consistent listening translates directly to growing competency. You’ll find the content naturally bridges the categories of technology education and career development, making it a useful companion for your learning journey.
Author: Language: English Episodes: 113

How to Program with Java Podcast
Podcast Episodes
EP55 - How to Sort with Streams in Java [not-audio_url] [/not-audio_url]

Duration: 37:53
In this episode we'll talk about how to sort a stream of objects using the ".sorted()" function. We'll also talk about the differences between using a stream to sort vs using something like Collections.sort(), which has…
EP54 - What is the Map Operation in Java Streams? [not-audio_url] [/not-audio_url]

Duration: 41:49
Big announcement: today marks the launch of our brand new "Beginners only" Coding Bootcamp. If you're a beginner to coding and have spent less than about 6 months learning to code, you're a great fit for this new 16 week…
EP53 - Intro to Streams in Java [not-audio_url] [/not-audio_url]

Duration: 43:44
GitHub link here: https://github.com/tp02ga/FunWithStreams In this episode we'll talk about: What are streams and why you should care about them Comparing a simple Stream example to a Looping example Intermediate vs Term…
EP52 - Most Common Functional Interfaces in Java [not-audio_url] [/not-audio_url]

Duration: 53:25
In this episode we'll talk about 7 common Functional Interfaces that Java provides to us. UnaryOperator, BinaryOperator, Supplier, Consumer, Function, Predicate and BiPredicate Interested in starting your coding career?…
EP51 - Let's Talk Lambdas in Java [not-audio_url] [/not-audio_url]

Duration: 57:32
In this episode we'll talk about a super useful feature that was introduced back in Java version 8, known as Lambdas. The Lambda feature is something you didn't know you desperately wanted or needed until you understood…
EP50 - #3 of 3 to Getting a Job as a Coder [not-audio_url] [/not-audio_url]

Duration: 31:04
In this episode we'll talk about the 3rd key to getting a job as a coder... How do you stand out from the crowd? You put in all this effort to learn how to code. You likely have a plan, you follow a curriculum, you seek…
EP49 - Top 3 mistakes coders make when applying to their first job [not-audio_url] [/not-audio_url]

Duration: 35:49
In this episode we'll talk about 3 big mistakes that aspiring coders make when trying to land their very first job. Getting your first job as a coder will be the most difficult challenge when trying to launch your profes…
EP47 - Key #2 of 3 to Getting a Job as a Coder [not-audio_url] [/not-audio_url]

Duration: 37:38
Interested in starting your coding career? I'm now accepting students into an immersive programming Bootcamp where I guarantee you a job offer upon graduation. It is a 6 month, part-time, online Bootcamp that teaches you…