- 博客(47)
- 资源 (8)
- 收藏
- 关注
原创 GIS:深圳独立坐标系与国家2000坐标系互转教程
经过多年的发展,在深圳独立坐标系下的地理数据已经积累很多了,如今国家要求统一转换到国家2000坐标系。对于北京54、西安80这类坐标系下的数据,借助ArcGIS软件能够很轻松地转换为国家2000,但是由于缺少深圳独立坐标系的具体参数,从而存在转换难度。详细的转换参数掌握在深圳市测绘相关部门,对于机关单位能够无偿地进行转换,而对于社会企业则有一定的收费标准。因此产生了一定的需求,如何用较少的成本实现深圳独立坐标系转国家2000坐标系?.........
2022-08-02 18:06:37 24475 5
原创 Vue.js:部署时自动过滤console.log语句
在开发阶段的时候我们会经常在前端项目里面使用console.log来输出、调试代码,当要将这个项目部署到服务器时,首先我们不想把这些信息暴露给用户,其次这些console.log函数会一定程度上影响代码的执行效率。所以我们在打包发布部署时,需要将这些console.log语句给屏蔽掉。
2021-03-20 17:12:47 667
原创 Vue.js:父组件向子组件props动态传递对象的三种方法
props为我们父子组件传递简化了很多,但父组件向子组件传递的值只会在mount阶段挂载到页面一次,之后便不再执行这个阶段。那么就存在一个问题,如果我们把fatherAttrs对象修改后,子组件的attrs对象能够接收到改变,但没有办法同步更新到页面上,即上面这种方法无法使得父组件能动态地向子组件传递数据。文章为此提出了三个解决方案!
2021-03-20 12:02:59 22059 3
原创 QT编程:QT Creator5.12.8打包发布可运行程序
我们在完成一个QT项目后,需要将该项目打包发布出去给别人用。通常而言,由QT Creator构建的可执行文件(无论是Debug版本,还是Release版本)只允许在本机和具有相同QT环境的电脑使用,要是用户电脑没有安装QT环境,则无法运行。那么该如何使得项目可执行程序具有通用性呢?这就需要开发者将QT相关的dll文件放置在可执行程序的同目录下,而我们怎么知道需要什么dll文件呢?下面可以通过QT的命令行完成这步操作。
2021-02-20 23:23:02 446
原创 Mybatis(JsonFormat)+PostgreSQL:提取的时间与实际存储时间不同
近期在SpringBoot+Mybatis的项目中,数据库使用的是PostgreSQL。其中有一些表使用了timestamp(6) without time zone字段来存储时间,在Mybatis映射时为了能够满足中国时区时间与时间格式的统一在JavaBean的时间属性上使用@JsonFormat注解。但是出现了诡异的情况:选择返回的时间与数据库存储记录的时间对不上。
2021-02-13 17:05:02 1196
原创 Vue.js:Vue-cli构建的项目启动服务后自动打开浏览器
使用Vue-cli构建的项目是没有配置启动服务后自动打开浏览器功能的,这对于我们开发有时不太方便(需要自己输入前端服务的url)。那我们该如何配置实现启动服务后自动打开浏览器呢?由于Vue-cli2.0 与 Vue-cli3.0及以上构建出来的项目在结构上有所区别,因此分为两部分介绍实现方法。
2021-01-29 11:27:16 1425 1
原创 PostgreSQL:常用业务SQL语句
之前写了个《PostgreSQL:常用基础SQL语句》里面是PostgreSQL的基础操作,在业务操作层面并无涉及。因此,这篇博客主要用于记录各种业务所对应的SQL语句。
2021-01-22 17:43:16 228
原创 SpringBoot:前端与后台的时间格式转换
前言从数据库获取时间传到前端进行展示的时候,我们有时候可能无法得到一个满意的时间格式的时间日期,在数据库中显示的是正确的时间格式,获取出来却变成了很丑的时间戳,如“yyyy-mm-ddT16:00:00.000Z”。那怎么把这个时间戳转为我们常用的"yyyy-mm-dd"格式呢?@JsonFormat注解很好的解决了这个问题,我们可以通过使用@JsonFormat可以很好的解决:后台到前台时间格式保持一致的问题,其次,另一个问题是,我们在使用Web服务时,可能会需要用到传入时间给后台,比如注册新用户需要
2021-01-22 17:10:36 1348
原创 C++编程:将exe的命令行输入解析到对应变量
很多时候我们实现地理模型,为了有较好的运算速度,会选择使用C++进行开发,而且大多数时候是采用Win32控制台项目的方式打包。缺少了可视化界面的参数输入,则采用命令行的方式。但是地理模型的命令行又不像可视化一样——对应参数项输入,而是采用将所有参数整合成一条命令行。
2021-01-21 16:08:05 299
原创 Git:通过Bash查看提交记录中文件的增删与修改
前言我们有时候会忘了上一次提交记录是哪些文件做了修改,通过github上能够看出来,但是不够方便。实际上通过Git 自带的Bash就能够查看上一次提交记录是哪些文件进行了修改。注意:通过该命令行,仅能查看提交记录中哪一些文件增加删除了或被修改了,并无法查看文件的修改细节。git log --stat// 如果想知道修改的文件具体哪些位置做了修改,可以通过TortoiseGit软件的Diff工具进行比对,也可以通过IDE上集成的Git工具进行比对检查。...
2021-01-20 23:26:35 866
原创 Git:解决首次拉取远程分支出现(分支|MERGING)
前言分工开发半年的项目最近准备合并成一个内测版本,小组长合并到develop分支后,我想checkout到这个分支看看具体情况,然后自然而然用起了下面的语句:(错误做法)//确定develop的位置git branch -a//切换分支git checkout develop//拉取分支git pull结果原本已经合并完的develop分支出现了文件冲突(develop|MERGING),这就很奇怪了。先检查git日志:git log发现拉取下来的代码最新的commit是去年11月的
2021-01-12 11:02:47 4418
原创 GIS Server:GeoServer安装教程
GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。GeoServer最重要的一点是能够发布自己的地图数据,让我们电脑上的数据成为一个能被快速便捷访问的网络资源,同时也能够支持我们对于地图数据的快速查询等操作。
2020-12-25 11:22:15 839
原创 Java编程:网络请求与HttpClient的使用
网络是用物理链路将各个孤立的工作站或主机相连在一起,组成数据链路,从而达到资源共享和通信的目的。通信是人与人之间通过某种媒体进行的信息交流与传递。网络通信是通过网络将各个孤立的设备进行连接,通过信息交换实现人与人,人与计算机,计算机与计算机之间的通信。按通信执行类型可以分为同步通信(请求)和异步通信(请求),按建立通信的方式可以分为短连接通信和长连接通信。
2020-12-22 16:16:04 541
原创 WebGIS实战:Vue+Openlayers实现地图控件的加载与控件自定义位置
在上一节《WebGIS实战:Openlayers实现网络地图的加载与切换》中,我们已经用到了一个地图控件了——图层切换控件(由Openlayers-Extension实现),这一节将讲述我们可能还会用到什么控件,而且由于这些控件位置都是固定在地图的某一位置,有时不满足我们的布局需求,这就需要我们知道怎么调整这些控件的位置了。
2020-12-19 23:26:34 4442 9
原创 ArcGIS:根据DEM数据提取区域水系
利用DEM数据提取区域水系是常见的水文分析应用,为了获取区域的矢量水系数据,我们可以通过ArcGIS对高程DEM数据进行水文分析,为地表水流建立模型,进而获取到该地的水系数据,DEM数据精度越高,获取到的水系数据精度也就越高。以下介绍如何用ArcGIS提供的工具提取水系。
2020-12-17 17:23:45 7740
原创 Git:将当前修改的内容提交到新的分支上
有时候在参加一个项目时,执行clone得到master分支, 一开始只是想看看源码或者忘记了自己没有新建分支,结果后面自己根据需求添加了代码【添加后没有执行commit】, 但是此时的修改都在master分支, 提交必然是不可以的,还是要新建分支【所有修改都要在新建分支上进行】,最后在分支执行通过后,才能合并到master分支。
2020-12-16 17:35:13 11956 1
原创 WebGIS实战:Web GIS开发环境配置(Vue2.*+IView+Openlayers+Ol-ext+Proj4+JQuery+Axios)
上一节已经搭建好了基于Vue.js的前端开发环境,但是对于里面的配置我们还没完善,所以,这一节主要对开发环境进行具体配置,以满足Web GIS开发。
2020-12-13 11:59:49 2595 1
原创 Java编程:判断数组是否有重复值
利用一个列表逐个记录对象,如果contains方法返回true,则说明有重复值private boolean hasDuplicate(String[] objArray){ List<String> recordList = new ArrayList<>(); for (int i = 0; i < objArray.length; i++){ //如果不存在,则添加到列表中 if (!recordList.contains(objArray[i]
2020-12-11 20:39:34 1791
原创 WebGIS实战:前端开发环境搭建(nvm、node、vue cli)
Web GIS依托于Web技术,因此也离不开Web的相关框架。本节主要讲的是如何从零开始搭建一个前端开发环境,下一节将以此作为基础,对该开发环境进行具体配置,使得满足Web GIS开发
2020-12-10 15:29:59 2717 3
原创 INaturalist爬虫:动植物研究学者的数据下载利器,别再为下载数据花时间发愁!
iNaturalist 是世界上最受欢迎的大自然观察网站之一。 iNaturalist 为动植物学家提供了大量的由志愿者拍摄提供的动植物图片或记录,这些数据对于学者进行研究非常重要。但由于网站数据导出的限制,每次只能下载不超过20w条记录,而且每次导出都需要很长一段时间,学者需要频繁查看是否下载完成,下载数据后重复操作继续下载。这个过程十分耗费时间,因此提供一个脚本实现自动化数据下载。
2020-12-06 10:59:38 3350 5
原创 Java编程:颜色色带图片的生成
效果图实现代码 //获取色带的RGG列表 ColorMap colorMap = new ColorMap(); //参数:图片宽度、高度、颜色类型 BufferedImage bufImg = new BufferedImage(25, 255, BufferedImage.TYPE_INT_RGB); //获取该图片的画笔 Graphics graphics = bufImg.getGraphics(); // for (int i
2020-12-05 16:00:59 1411
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人