HibernateSpatial4.3+postgresql的使用
来源:互联网 发布:华为的程序员 编辑:程序博客网 时间:2024/06/14 00:31
SSH的整合参考的【SSH网上商城项目实战01】整合Struts2、Hibernate4.3和Spring4.2这篇文章,写得非常细致,我参考并按照自身需求做了改动,实现通过HibernateSpatial使用postgis的ST_within(geometry A,geometry B)函数来查询polygon范围内的点。
现记录改动及自认重要之处,以备后时翻阅:
实例类里的几何类型:
@Type(type = "org.hibernate.spatial.GeometryType")private Point point;
实例类对应的**.hbm.xml:
1.id自增
<id name="id" type="java.lang.Integer"> <column name="id" /> <generator class="sequence"> <param name="sequence">maps_id_seq</param> </generator> </id>
2.几何字段及时间戳字段
<property name="point" type="org.hibernate.spatial.GeometryType"> <column name="point" /> </property> <property name="time" type="java.sql.Timestamp"> <column name="time" length="29" /> </property>
查询几何范围内的点:
public List<Maps> queryByRange(Geometry geo) {String hql = "from Maps m where within(m.point,:filter) = true";Query query = getSession().createQuery(hql);query.setParameter("filter", geo);List<Maps> maps = query.list();return maps;}
bean.xml中连接池的配置:
<!-- 配置连接池 --><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="driverClass" value="org.postgresql.Driver"/><property name="jdbcUrl" value="jdbc:postgresql://192.168.3.211:5432/postgis"/><property name="user" value="postgres"/><property name="password" value="****"/></bean>hibernate.cfg.xml中dialect的配置:
<property name="dialect">org.hibernate.spatial.dialect.postgis.PostgisDialect</property>
用到的jar包:hibernate-spatial-4.3.jar 、 postgis.jar 、 postgis-jdbc-driver.jar 、postgresql-9.2-1004.jdbc4.jar 、 jts-1.11.jar
还可参考tutorial4、PostGIS整合Hibernate4.0+Spring(Maven,Kepler)
0 0
- HibernateSpatial4.3+postgresql的使用
- PostgreSQL+PostGIS的使用 3
- postgresql的使用
- PostgreSQL+PostGIS的使用
- Postgresql: UUID的使用
- Postgresql: UUID的使用
- PostgreSQL+PostGIS的使用
- postgresql的使用
- PostgreSQL dblink的使用
- PostgreSQL file_fdw的使用
- Postgresql: UUID的使用
- 重要!PostgreSQL的使用
- postgresql分区表的使用
- postgresql with的使用
- PostgreSQL+PostGIS的使用
- PostgreSQL+PostGIS的使用 1
- PostgreSQL+PostGIS的使用 2
- PostgreSQL+PostGIS的使用 4
- [torch]Save initial state(fastlstm)
- 每日一篇算法题——数独
- PHP源码解析笔记2-生命周期和Zend引擎
- Java四种权限修饰符(public, default, protected, private)的用法和对比
- hadoop原生版安装部署---3.hdfs
- HibernateSpatial4.3+postgresql的使用
- 一,Launch启动图片,隐藏上面的状态栏
- centos6.5 Building the main Guest Additions module
- 仿微信输入框静态
- Android – Toolbar 上的 Navigation Drawer
- 【数据结构】之 线性表详解
- sapui5不同View之间传参数的方法
- markdown如何打出双下标
- wenzahang