The fields of my entities are prefixed with an underscore since they are private variables. Since I don't like my database schema that way I've named all the columns without the underscore, thus far no problems. Now when you create a ManyToMany mapping a problem occurs. The column name in the database is "fieldname" but the fieldname = "_fieldname". We need an annotation in the form of @referencedFieldName to specify the relevant field name.