IntelliJ Idea 中的 Geo Viewer 很酷
你好老朋友
感谢 波兹南 Java 用户组 在一次聚会期间随机选择我来获得 JetBrains IntelliJ Idea Ultimate 许可证,我开始每天使用它。对我来说这并不是全新的软件。我使用 Android Studio 已有近十年了,偶尔会在 IntelliJ 社区版中参与一些副项目。最近在工作中,我一直在使用 VS Code 和 NeoVim。与后者完全不同的 IDE 理念。
我目前恰好在后端工作,IntelliJ 绝对是一个野兽,它的内置工具可以满足您能想象到的一切。
除了对 TypeScript、SQL 和构建配置的常用语言支持之外,还有不错的数据库工具。数据显示类似于Excel电子表格,可以过滤,可以生成DDL代码,画图表等。没什么特别的;其他工具可以实现这一点。
但这只是在 IDE 内部,因此无需更改上下文即可轻松访问。
地理查看器
我偶然注意到了 Geo Viewer 工具。
我正在处理一些地理数据,例如区域和点。 Geo Viewer 开箱即用。不需要插件或配置。至少对于具有 Postgis 设置的 Postgres 来说是这样。
这看起来可能是不必要的视觉效果,但实际上对于调试很有用。想象一下有一个查询从一个表返回另一个表中定义的区域内的点。能在实际地图上看到结果真是太棒了。
让我们把它付诸实践
我使用 ChatGPT 生成波兰各省的数据。这并不完全是坏事...它们都在正确的位置,只是太小了。
城市位置的数据没问题。
为了在单个地理视图上可视化城市和区域,我使用了一个简单的 SQL 视图。我从大学开始就没有接触过SQL,所以这也是一次有趣的经历:D
-- Enable PostGIS extension if not already enabled CREATE EXTENSION IF NOT EXISTS postgis; -- Create vovoidships table CREATE TABLE vovoidships ( id SERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, bounds GEOMETRY NOT NULL ); -- Create cities table CREATE TABLE cities ( id SERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, coordinates GEOMETRY NOT NULL ); -- Insert Polish voivodeship capitals into cities table INSERT INTO cities (name, coordinates) VALUES ('Warsaw', ST_SetSRID(ST_MakePoint(21.0122, 52.2297), 4326)), -- Mazowieckie ('Kraków', ST_SetSRID(ST_MakePoint(19.9449, 50.0647), 4326)), -- Małopolskie ('Łódź', ST_SetSRID(ST_MakePoint(19.456, 51.7592), 4326)), -- Łódzkie ('Wrocław', ST_SetSRID(ST_MakePoint(17.0385, 51.1079), 4326)), -- Dolnośląskie ('Poznań', ST_SetSRID(ST_MakePoint(16.9286, 52.4064), 4326)), -- Wielkopolskie ('Gdańsk', ST_SetSRID(ST_MakePoint(18.646, 54.352), 4326)), -- Pomorskie ('Szczecin', ST_SetSRID(ST_MakePoint(14.5528, 53.4289), 4326)),-- Zachodniopomorskie ('Bydgoszcz', ST_SetSRID(ST_MakePoint(18.0076, 53.1235), 4326)), -- Kujawsko-Pomorskie ('Lublin', ST_SetSRID(ST_MakePoint(22.5686, 51.2465), 4326)), -- Lubusz ('Białystok', ST_SetSRID(ST_MakePoint(23.1641, 53.1325), 4326)), -- Podlaskie ('Katowice', ST_SetSRID(ST_MakePoint(19.039, 50.2583), 4326)), -- Śląskie ('Opole', ST_SetSRID(ST_MakePoint(17.9213, 50.6644), 4326)), -- Opolskie ('Rzeszów', ST_SetSRID(ST_MakePoint(21.9981, 50.0415), 4326)), -- Podkarpackie ('Gorzów Wlkp.', ST_SetSRID(ST_MakePoint(15.2299, 52.7387), 4326)), -- Lubusz ('Zielona Góra', ST_SetSRID(ST_MakePoint(15.5061, 51.9353), 4326)); -- Lubusz -- Insert Polish voivodeships into vovoidships table with corrected boundaries INSERT INTO vovoidships (name, bounds) VALUES ('Mazowieckie', ST_SetSRID(ST_GeomFromText('POLYGON((20.5937 52.4304, 20.7031 52.2398, 21.0994 52.1985, 21.4855 52.2738, 21.7426 52.5456, 21.4822 52.6935, 20.8778 52.6281, 20.5937 52.4304))'), 4326)), ('Małopolskie', ST_SetSRID(ST_GeomFromText('POLYGON((19.0013 49.6121, 19.3004 49.2235, 19.8534 49.1386, 20.1253 49.2158, 20.3469 49.7248, 20.1154 49.9501, 19.0013 49.6121))'), 4326)), ('Łódzkie', ST_SetSRID(ST_GeomFromText('POLYGON((18.9224 51.6847, 19.5032 51.5472, 19.7415 51.7594, 19.6886 52.0549, 19.1579 52.0201, 18.9224 51.6847))'), 4326)), ('Dolnośląskie', ST_SetSRID(ST_GeomFromText('POLYGON((16.2795 50.1585, 16.6575 49.9253, 17.1573 49.8861, 17.3046 50.3278, 17.1566 50.4869, 16.6676 50.5302, 16.2795 50.1585))'), 4326)), ('Wielkopolskie', ST_SetSRID(ST_GeomFromText('POLYGON((16.4570 52.0254, 16.9745 51.8472, 17.4446 51.8598, 17.8387 52.0295, 17.5519 52.3232, 16.4570 52.0254))'), 4326)), ('Pomorskie', ST_SetSRID(ST_GeomFromText('POLYGON((17.9927 54.0531, 18.7247 54.0065, 18.7840 53.8160, 18.5911 53.7163, 17.9927 54.0531))'), 4326)), ('Zachodniopomorskie', ST_SetSRID(ST_GeomFromText('POLYGON((14.2102 53.4019, 14.8960 53.3481, 15.0853 53.3305, 15.0006 53.0747, 14.2102 53.4019))'), 4326)), ('Kujawsko-Pomorskie', ST_SetSRID(ST_GeomFromText('POLYGON((17.8260 53.0401, 18.2550 52.9635, 19.1827 52.9581, 19.1902 53.1355, 18.0730 53.1274, 17.8260 53.0401))'), 4326)), ('Lubuskie', ST_SetSRID(ST_GeomFromText('POLYGON((14.3215 52.2755, 14.7083 52.2985, 15.0293 52.4335, 15.0641 52.5437, 14.3215 52.2755))'), 4326)), ('Podlaskie', ST_SetSRID(ST_GeomFromText('POLYGON((22.7210 53.6851, 22.9785 53.4699, 23.4987 53.4057, 23.7810 53.6431, 22.7210 53.6851))'), 4326)), ('Śląskie', ST_SetSRID(ST_GeomFromText('POLYGON((18.6704 50.1671, 19.0423 50.1492, 19.3875 50.2675, 19.5927 50.2046, 19.1676 50.0395, 18.6704 50.1671))'), 4326)), ('Opolskie', ST_SetSRID(ST_GeomFromText('POLYGON((17.2070 50.5458, 17.4982 50.3454, 17.7513 50.2998, 17.8897 50.5008, 17.2070 50.5458))'), 4326)), ('Podkarpackie', ST_SetSRID(ST_GeomFromText('POLYGON((21.1791 49.8919, 21.4867 49.8395, 21.9074 49.7579, 22.0595 49.8491, 21.1791 49.8919))'), 4326)); CREATE VIEW CombinedVoivodeshipsCitiesView AS SELECT 'Voivodeship' AS type, v.id AS id, v.name AS name, NULL AS latitude, NULL AS longitude, v.bounds AS geometry FROM vovoidships v UNION ALL SELECT 'City' AS type, c.id AS id, c.name AS name, ST_Y(c.coordinates) AS latitude, ST_X(c.coordinates) AS longitude, c.coordinates AS geometry FROM cities c;
受到 Kacper Koza 上一次 JUGtoberfest 演示的影响,我开始使用更多 IntelliJ 快捷方式。并关闭了标签。到目前为止一切顺利,我的鼠标得到了休息。
您使用的工具的最新发现是什么?
以上是IntelliJ Idea 中的 Geo Viewer 很酷的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

公司安全软件导致部分应用无法正常运行的排查与解决方法许多公司为了保障内部网络安全,会部署安全软件。...

将姓名转换为数字以实现排序的解决方案在许多应用场景中,用户可能需要在群组中进行排序,尤其是在一个用...

系统对接中的字段映射处理在进行系统对接时,常常会遇到一个棘手的问题:如何将A系统的接口字段有效地映�...

在使用MyBatis-Plus或其他ORM框架进行数据库操作时,经常需要根据实体类的属性名构造查询条件。如果每次都手动...

在使用IntelliJIDEAUltimate版本启动Spring...

Java对象与数组的转换:深入探讨强制类型转换的风险与正确方法很多Java初学者会遇到将一个对象转换成数组的�...

电商平台SKU和SPU表设计详解本文将探讨电商平台中SKU和SPU的数据库设计问题,特别是如何处理用户自定义销售属...

在使用TKMyBatis进行数据库查询时,如何优雅地获取实体类变量名以构建查询条件,是一个常见的难题。本文将针...
