hibernate3与实体类型无关的映射方式---动态模型(Dynamic Model)
2013-11-21 16:42
387 查看
所谓动态容器就是就是通过容器(如Map)对数据库记录进行表达,以HashMap举例;
例子:
以一个HashMap实例表达某条库表记录;HashMap以"键-值"对的形式保存了保存了库表中的"字段名/字段值"信息;
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<entity-name="DynamicUerMap" table="T_User" >
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="native" />
</id>
<property name="name" column="name" type="string" />
</class>
</hibernate-mapping>
entity-name指定了实体名,对应的操作代码也变了,以保存为例;
Session session=this.getHibernateTemplate().getSessionFactory().openSession().getSession(EntityMode.MAP);
Map userMap=new HashMap();
userMap.put("name","Tom");
session.save("DynamicUerMap",userMap);
DynamicUerMap为配置中定义的实体名;hibernate将根据实体名所对应的映射配置,完成动态模型的持久化操作;
例子:
以一个HashMap实例表达某条库表记录;HashMap以"键-值"对的形式保存了保存了库表中的"字段名/字段值"信息;
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<entity-name="DynamicUerMap" table="T_User" >
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="native" />
</id>
<property name="name" column="name" type="string" />
</class>
</hibernate-mapping>
entity-name指定了实体名,对应的操作代码也变了,以保存为例;
Session session=this.getHibernateTemplate().getSessionFactory().openSession().getSession(EntityMode.MAP);
Map userMap=new HashMap();
userMap.put("name","Tom");
session.save("DynamicUerMap",userMap);
DynamicUerMap为配置中定义的实体名;hibernate将根据实体名所对应的映射配置,完成动态模型的持久化操作;
相关文章推荐
- Revit二次开发(3):Revit动态模型更新(DMU: Dynamic Model Update)功能
- 关于Entity Framework更新的几种方式以及可能遇到的问题(附加类型“Model”的实体失败,因为相同类型的其他实体已具有相同的主键值)在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 时如果图形中的任何实体具有冲突键值,则可能会发生上述行为
- Hibernate深入学习(一):实体映射文件中的package,auto-import,dynamic-insert,dynamic-update用法
- hibernate 注解方式配置实体的映射
- Hibernate实体映射配置1(java@注解方式)
- 9-Hibernate3中的动态模型(Dynamic Model)
- Hibernate 实体映射 @注解与xml 配置方式比较
- hibernate中一对多映射(set集合中存放的原生数据类型,而不是实体)
- Hibernate处理一个实体映射多张相同结构的数据表--动态映射
- Hibernate处理一个实体映射多张相同结构的数据表--动态映射
- Hibernate映射枚举类型和实体类型的区别
- Hibernate处理一个实体映射多张相同结构的数据表--动态映射
- Hibernate基于注解方式配置来实现实体和数据库之间存在某种映射关系
- Hibernate系列学习之映射持久化类--Hibernate中实体类型和值类型概念辨析
- hibernate之实体类型到映射文件
- hibernateModel使用方式,及扩展hibernate标量查询与实体查询
- hibernate动态模型(Dynamic models)
- hibernate实体类型映射文件
- Hibernate--Enum类型的set集合映射到数据库(xml配置文件实现方式)
- Hibernate实体映射配置1(java@注解方式)