Я пытаюсь использовать расширение postgis для базы данных postgresql и не могу заставить его работать так, как хотелось бы. Я использую postgis 2.1.6 (custome build from source) и postgresql-9.4-1201.jdbc4.jar (есть дополнительный проект с конфигурацией спящего режима, но, вероятно, он подходит для этого случая).PostGIS jdbc sql query
У меня есть тестовый код (в основном из PostGIS, например, папку): "! PGgeometry успешно"
String dburl="jdbc:postgresql://localhost/mapwebcatalog";
Connection conn = DriverManager.getConnection(dburl, dbuser, dbpass);
Statement stat = conn.createStatement();
{
ResultSet rs = stat.executeQuery("SELECT raw_data_file_points::geometry from raw_data_file_area");
rs.next();
result = (PGobject) rs.getObject(1);
if (result instanceof PGgeometry) {
System.out.println("PGgeometry successful!");
} else {
System.out.println("PGgeometry failed!");
}
}
{
ResultSet rs = stat.executeQuery("SELECT raw_data_file_points from raw_data_file_area");
rs.next();
result = (PGobject) rs.getObject(1);
if (result instanceof PGgeometry) {
System.out.println("PGgeometry successful!");
} else {
System.out.println("PGgeometry failed!");
}
}
Когда я бегу, я получаю (для первого, если) и «PGgeometry failed!» (для второго, если). И разница только в явном типе для столбца (:: geometry).
Это нормально, или что-то не так с конфигурацией? Если это нормально и как это должно быть, нужно спящий генерировать SQL-запрос с типом casting?