Hiberante动态处理(MAP映射)
来源:互联网 发布:2016淘宝新店怎么刷单 编辑:程序博客网 时间:2024/05/21 10:25
在做EAM平台时,通过数据库操作,进行的又一次的抽象,设计一个数据容器模块,可以在平台完成数据表的增删改操作。发现传统的Hiberante的映射class,无法完成数据结构的局部修改和表的动态建立,需要增加或修改java类。
但是Hiberante本身是支持动态数据模型的,它允许entity映射为功能强大的Map集合类。同时我们遗弃的POJO的好处,POJO为程序操纵带来了很多便利,对象隐蔽了大量的动态过程。
使用Map为映射类时,在hbm定义文件中,在class中不用指定name属性、而是将name变为entity-name属性等于数据表的名字,映射文件就改好了。然后再将Session中的EntityMode属性设为MAP映射(session.getSession(EntityMode.MAP))。当数据结构(添加表或修改表字段等)发生变化时,我们只需修改或添加hbm文件映射模型就可以了,而不需要添加或修改java实体类了。这样我们就能使用Map存储,查询数据了。
查询代码操作:
//hql语句
String hql = "from 表名";
//查询数据表
List list = session.queryList(hql);
//遍历数据
for(int i=0;i<list.size();i++){
Map map = (Map)list.get(i);
Set l = map.keySet();
Iterator ii = l.iterator();
while(ii.hasNext()){
String key = (String)ii.next();
System.out.print(key+"--==--"+map.get(key));
}
}
Hiberante的映射方式有三种:MAP、POJO、DOM4J。我们最常用的也就是POJO了。
但是Hiberante本身是支持动态数据模型的,它允许entity映射为功能强大的Map集合类。同时我们遗弃的POJO的好处,POJO为程序操纵带来了很多便利,对象隐蔽了大量的动态过程。
使用Map为映射类时,在hbm定义文件中,在class中不用指定name属性、而是将name变为entity-name属性等于数据表的名字,映射文件就改好了。然后再将Session中的EntityMode属性设为MAP映射(session.getSession(EntityMode.MAP))。当数据结构(添加表或修改表字段等)发生变化时,我们只需修改或添加hbm文件映射模型就可以了,而不需要添加或修改java实体类了。这样我们就能使用Map存储,查询数据了。
查询代码操作:
//hql语句
String hql = "from 表名";
//查询数据表
List list = session.queryList(hql);
//遍历数据
for(int i=0;i<list.size();i++){
Map map = (Map)list.get(i);
Set l = map.keySet();
Iterator ii = l.iterator();
while(ii.hasNext()){
String key = (String)ii.next();
System.out.print(key+"--==--"+map.get(key));
}
}
Hiberante的映射方式有三种:MAP、POJO、DOM4J。我们最常用的也就是POJO了。
- Hiberante动态处理(MAP映射)
- COJ: Languages(字符串处理、map映射)
- Hiberante对象关联映射
- hiberante 注解映射问题
- Hiberante组件关联映射
- Hiberante事务并发处理
- hiberante 支持 动态绑定参数
- Soundex(map映射)
- Hiberante学习之复合主键的映射
- Hiberante学习之复合主键的映射
- Hiberante学习之复合主键的映射
- Hiberante学习之复合主键的映射
- Hiberante集合映射的一个入门示例
- Java 大对象类型的 Hiberante 映射
- hiberante
- 映射map
- Map----映射
- map 映射
- javassist教程
- 在Tomcat中部署Java Web应用程序
- javassist示例
- MyEclipse快捷键
- JAVA基础知识精华总结(转载)
- Hiberante动态处理(MAP映射)
- spring+hibernate+struts2搭建开发环境
- Oracle使用手册(一)---声明变量
- Oracle数据表解锁方法
- JAVA字符串转日期或日期转字符串
- 火影忍者_最新更新
- 美国历任总统
- 一个简单的ajax验证注册用户名
- 用 Tomcat 和 Eclipse 开发 Web 应用程序