Hi all,
I was trying understand Hibernate in my small application I have this db structure(mysql):
create table instructors (
instructor_id int(4) primary key,
first_nm varchar(50),
last_nm varchar(50)
);
create table courses (
course_id int primary key,
instructor_id int ,
course_cd varchar(50),
course_nm varchar(50)
);
alter table courses add foreign key (instructor_id) references instructors(instructor_id)
and my Hibernate maps:
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="beans.Instructors">
<id name="instructor_id" column="instructor_id">
<generator class="native"></generator>
</id>
<property name="first_nm" column="first_nm"></property>
<property name="last_nm" column="last_nm"></property>
</class>
</hibernate-mapping>
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="beans.Courses">
<id name="course_id" column="course_id">
<generator class="native"></generator>
</id>
<many-to-one name="instructor" class="beans.Instructors">
<column name="instructor_id" not-null="true"></column>
</many-to-one>
<property name="course_cd" column="course_cd" />
<property name="course_nm" column="course_nm" />
</class>
</hibernate-mapping>
It works fine but my question is the section:
<many-to-one name="instructor" class="beans.Instructors">
<column name="instructor_id" not-null="true"></column>
</many-to-one>
is correct ? because the instructor can have some courses and one course have only one instructor, right ? then correct should one-to-many in instructor class ? what you think ?
thanks a lot.