Hibernate学习文档_集合映射
2011-08-17 21:48
351 查看
Just for backup.
public class CollectionMapping { private Integer id; private String name; private Set<String> set; private List<String> list; private Map<String, String> map; private String[] array; }
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.lohamce.hibernate"> <class name="CollectionMapping" table="t_collection"> <id name="id"> <generator class="native" /> </id> <property name="name" /> <set name="set" table="t_set"> <key column="setId" /> <element type="string" column="setValue" /> </set> <list name="list" table="t_list"> <key column="listId"/> <list-index column="listIndex" /> <element type="string" column="listValue" /> </list> <array name="array" table="t_array"> <key column="arrId"/> <list-index column="arrIndex" /> <element type="string" column="arrValue" /> </array> <map name="map" table="t_map"> <key column="mapId" /> <map-key type="string" column="mapKey" /> <element type="string" column="mapValue" /> </map> </class> </hibernate-mapping>
@Test public void testSaveCollectionMapping(){ Session session = null; Transaction tx = null; CollectionMapping c = new CollectionMapping(); c.setName("Collection Mapping nn1"); Set<String> set = new HashSet<String>(); set.add("Set-A"); set.add("Set-B"); List<String> list = new ArrayList<String>(); list.add("List-A"); list.add("List-B"); String[] array = new String[] {"Array-A","Array-B"}; Map<String, String> map = new HashMap<String, String>(); c.setArray(array); c.setList(list); c.setMap(map); c.setSet(set); try{ session = HibernateUtil.openSession(); tx = session.beginTransaction(); session.save(c); tx.commit(); } catch (Exception e){ e.printStackTrace(); tx.rollback(); } finally { HibernateUtil.close(session); } }
CREATE TABLE `t_collection` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) NULL DEFAULT NULL, PRIMARY KEY (`id`) ); CREATE TABLE `t_array` ( `arrId` INT(11) NOT NULL, `arrValue` VARCHAR(255) NULL DEFAULT NULL, `arrIndex` INT(11) NOT NULL, PRIMARY KEY (`arrId`, `arrIndex`), INDEX `FK9FFBAECE6AA85C8` (`arrId`), CONSTRAINT `FK9FFBAECE6AA85C8` FOREIGN KEY (`arrId`) REFERENCES `t_collection` (`id`) ); CREATE TABLE `t_list` ( `listId` INT(11) NOT NULL, `listValue` VARCHAR(255) NULL DEFAULT NULL, `listIndex` INT(11) NOT NULL, PRIMARY KEY (`listId`, `listIndex`), INDEX `FKCB5F9189BF6720C5` (`listId`), CONSTRAINT `FKCB5F9189BF6720C5` FOREIGN KEY (`listId`) REFERENCES `t_collection` (`id`) ); CREATE TABLE `t_set` ( `setId` INT(11) NOT NULL, `setValue` VARCHAR(255) NULL DEFAULT NULL, INDEX `FK68F92177A24B89` (`setId`), CONSTRAINT `FK68F92177A24B89` FOREIGN KEY (`setId`) REFERENCES `t_collection` (`id`) ); CREATE TABLE `t_map` ( `mapId` INT(11) NOT NULL, `mapValue` VARCHAR(255) NULL DEFAULT NULL, `mapKey` VARCHAR(255) NOT NULL, PRIMARY KEY (`mapId`, `mapKey`), INDEX `FK68F7B1174BDE03` (`mapId`), CONSTRAINT `FK68F7B1174BDE03` FOREIGN KEY (`mapId`) REFERENCES `t_collection` (`id`) );
相关文章推荐
- hibernate集合映射学习笔记
- Hibernate学习文档_Composite映射
- Hibernate学习笔记(七)【映射值类型集合】
- Hibernate4学习总结(2)--配置形式的集合映射,关联关系映射
- hibernate学习12之Collection(集合)映射
- 【Hibernate学习笔记】映射值类型集合
- Hibernate学习笔记:集合映射之映射Map
- Hibernate集合映射学习
- Hibernate4学习总结(4)--注解形式的集合映射,关联关系映射
- Hibernate 学习笔记07 --集合映射_&_继承映射
- 【HIbernate框架学习】:Hibernate集合映射
- Hibernate学习-6-集合映射保存和集合数据获取案例
- HIbernate学习笔记(七) hibernate中的集合映射和继承映射
- Hibernate学习_015_集合映射
- Hibernate学习笔记:集合映射之映射Map
- Hibernate学习22 -- 关联映射12 -- 集合映射
- Hibernate关系映射学习点滴2:一对多和多对多关系映射
- 【Hibernate学习笔记】映射继承关系
- Hibernate之映射值类型集合(映射set)
- Hibernate之映射集合(排序集合)