well mappedBy anotation is very simple let me give you this sceneraio:
I have a Vehicle and Driver POJO's both represent entities on the Database both of them are mapped like this:
As you can see the mappedBy is the refering to a "transportista" object in Vehicle class which said something like this....
"This Set of Vehicle is OneToMany relationship with the class (Vehicle) and do a mapped Inverse mapping with an object named transportista"
So it goes to transportista and gets this
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "id_transportista", nullable = false)
private Driver transportista;
you'll see now hibernate does not have to guess about the reference and that is inverse mapping..............