2008-02-26
Elegant Java Programming 优雅Java编程(三)
关键字: hibernate oracle spatial geometry java使用Hibernate存储Oracle Spatial对象
在hibernate.cfg.xml文件中做如下设置:
<!-- dialect for Oracle 10G Spatial -->
<property name="dialect">com.navsys.spatial.OracleSpatialDialect</property>
在对应java bean的ORM文件中,设置属性的java类型为com.navsys.spatial.JGeometryType
<property name="geoloc" column="GEOLOC" type="com.navsys.spatial.JGeometryType"></property>
以下是使用hibernate保存Geometry的java 代码样例
LBSBusLine busLine = new LBSBusLine(); ........ ........ //Geometry的坐标数组 double coords = ..... //构造oracle.spatial.geometry.JGeometry对象 JGeometry geometry = null; geometry = JGeometry.createLinearLineString(coords,2,8307);//保存成为一种线型 //将oracle.spatial.geometry.JGeometry对象封装成 com.navsys.spatial.JGeometryType对象 JGeometryType gotmetryType = new JGeometryType(geometry); busLine.setGeoloc(gotmetryType); ......... ......... //通过Hibernate Session保存bean session.save(busLine);
由于com.navsys.spatial.JGeometryType是对oracle.spatial.geometry.JGeometry对象使用装饰模式实现了彻底封装,因此,在读取JGeometry属性的操作中,直接使用bean的GET方法即可获得 com.navsys.spatial.JGeometryType型的信息就可以了。
以下附上几个需要的jar包:
(PS:上传jar文件不成功,只好将文件名改为.zip,请各位下载后手动将文件名改回.jar)
发表评论
提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则
- 浏览: 54358 次
- 性别:

- 来自: 福州

- 详细资料
搜索本博客
我的相册
jasmine-008.JPG
共 135 张
共 135 张
链接
最新评论
-
分享几张vista壁纸
一直很喜欢WINDOWS的壁纸,apple的也不错。
-- by protti -
分享几张vista壁纸
我怎么只可以发三张图片,楼主如何操作?
-- by Run -
好一朵美丽的茉莉花
好漂亮滴蛮
-- by isky -
Elegant Java Programming ...
学习学习...厉害
-- by jiangshaolin -
JA-SIG(CAS)学习笔记3
推荐CAS使用acegi而且spring security 2.0有很大的改进
-- by zhongludeng






评论排行榜