Hibernate 关联映射之组件映射
Hibernate的关联映射包括:
一对一(Persion - IDCard)
一对多—epartment - Employee)
多对一(Employee - Department)
多对多(Teacher - Student)
组件映射(User - Name)
集合映射(Set、List、Map)
inverse和cascade(Employee - Department)
?
本文以组件映射为例:
组件通常也是一个对象
当这个对象要单独创建表的时候,就相当于一对一、一对多、多对一。
当这个对象不需要单独创建表的时候,想把自己的属性写到主对象表中的时候,就用到组件映射<component>
主对象User.hbm.xml配置文件如下:
<component name="name">
??? <property name="firstName" column="first_name"/>
??? <property name="lastName" column="last_name"/>
</component>
?
实体类:User.java 和组件类 Name.java
Hibernate配置文件:hibernate.cfg.xml
?
CREATE TABLE `user` ( `id` int(11) NOT NULL auto_increment, `age` int(11) default NULL, `first_name` varchar(255) default NULL, `last_name` varchar(255) default NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1?
?
?
?
?