首页 > 编程学习 > nutz:postgresql 中 PostGIS的几何数据类型处理
20252 月11

nutz:postgresql 中 PostGIS的几何数据类型处理

 @Column
    @ColDefine(customType = "GEOGRAPHY(Point,4326)", adaptor = PsqlPointAdaptor.class)
    @ApiModelProperty(description = "坐标")
    private String geomPoint;//值格式为"POINT(经度 纬度)"
import net.postgis.jdbc.PGgeometry;
import net.postgis.jdbc.geometry.Point;
import org.nutz.dao.jdbc.ValueAdaptor;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;

public class PsqlPointAdaptor implements ValueAdaptor {
    @Override
    public Object get(ResultSet rs, String colName) throws SQLException {
        return rs.getObject(colName);
    }

    @Override
    public void set(PreparedStatement stat, Object obj, int index)  throws SQLException{
        if (null == obj) {
            stat.setNull(index, Types.NULL);
        } else {
            String pointStr = (String) obj;
            Point point = new Point(pointStr);
            PGgeometry pgGeometry = new PGgeometry(point);
            stat.setObject(index, pgGeometry, Types.OTHER);
        }
    }
}
    <properties>
        <postgis-jdbc.version>2024.1.0</postgis-jdbc.version>
    </properties>
    <dependencies>
        <!-- PostGIS扩展类型 -->
        <dependency>
            <groupId>net.postgis</groupId>
            <artifactId>postgis-jdbc</artifactId>
            <version>${postgis-jdbc.version}</version>
        </dependency>

本文地址:https://wizzer.cn/archives/3857 , 转载请保留.

本文目前尚无任何评论.

发表评论