Mon, 28 July 2014
Since we’ve already learned about the unidirectional @ManyToOne relationship, we can now move on to talking about what a bidirectional relationship is like, when using Hibernate. The term “bidirectional” literally means “functioning in two directions”, which is the concept that we will apply in our relationships between two Java objects. When we have a bidirectional relationship between objects, it means that we are able to access Object A from Object B, and Object B from Object A. We can apply this logic to our real world coding example that we saw in the last post. The example we will use is the relationship between an Employer and an Employee. Previously, we only defined a unidirectional relationship, so we could only access the Employer from the Employee object and not vice-versa. Now let’s take a look at how to transform our existing unidirectional relationship into a bidirectional one.
Wed, 23 July 2014
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:
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
Tue, 15 July 2014
Data Access Objects – What are they?
Data Access Objects (or DAOs for short) are used as a direct line of connection and communication with our database. DAOs are used when the actual CRUD (CRUD = Create, Read, Update, Delete) operations are needed and invoked in our Java code. These data access objects also represent the “data layer” of our application.
These objects are still just plain old Java objects that incorporate the use of some Hibernate annotations to give them the functionality we need from them. Again, that functionality being the communication with the database.
Also, believe it or not, the concept of creating a file specifically for accessing the database is a design pattern. It’s called the Data Access Object Pattern and you can read more about it from this nice short Wiki article.
What Hibernate Annotations Should We Use?
Okay, so now that you’re somewhat familiar with DAOs, it’s time to learn how to integrate these plain old Java objects with our Hibernate framework (so they actually do the work we need them to do).
There are two main annotations that you need to be familiar with:
To learn more, visit our show notes page via http://howtoprogramwithjava.com/session52
Tue, 8 July 2014
What You’ll Learn
The focus of this podcast / blog post is to teach you how to create the connection between your Java objects and the SQL Database tables. Remember, the whole point of the Hibernate framework is for you to be able to write Java code that allows you to communicate with your database.
When I say that the goal is to communicate with your database, what I mean is:
What we’re going to be tackling in this post will the step #1, how to get Hibernate to create our tables for us.
Thu, 3 July 2014
What is a Persistence Framework?
As the name implies, it has something to do with persisting things... this means that we're still talking about databases. But what is it that we are persisting with this framework?
Objects (of course)
A persistence framework is something we use in Java to bridge the gap between Java and SQL.
Hopefully we've gone through all of my previous tutorials and have learned a thing or two about Java and SQL. But one thing I haven't taught you yet, is how to put your knowledge of SQL into Java.
That's what I'll be teaching you throughout these Hibernate (persistence framework) tutorials.
And if you haven't guessed it already, Hibernate is a persistence framework that you can use in Java. It's what allows you to write Java code (staying true to Object Oriented programming practices) and yet still be able to communicate with your database. Cool eh?
For more information on this, check out the show notes page via: howtoprogramwithjava.com/session50