自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 【地理空间】轨迹相似度算法(DTW、LCSS)

序列相似度在现实生活中我们常常需要比较两串数字的相似度,比如两串数字(一维),再比如两条轨迹(二维),那么如何计算两个序列的相似度呢?有人提出了DTW算法,一种计算序列距离的方法。DTW算法原理算法原理主要参考:https://blog.csdn.net/raym0ndkwan/article/details/45614813。在这里只是进行更详细的分析和介绍,以两个数组为例:s1 = [1, 2, 3, 4, 5, 5, 5, 4]s2 = [3, 4, 5, 5, 5, 4]首先将这两

2021-04-02 15:59:41 12995 1

原创 【Java基础】WebSocket在Spring中的使用

WebSocket使用关于怎么使用WebSocket,以及WebSocket的一些概念,这篇文章有做详细的介绍。为什么要使用WebSocket我接触到WebSocket,是因为想使用WebSocket来替代HTTP 长连接。HTTP1.1通过使用Connection:keep-alive进行长连接,HTTP 1.1默认进行持久连接,在一次 TCP 连接中可以完成多个 HTTP 请求,但是对每个请求仍然要单独发 header,Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务

2021-03-05 16:29:34 671 1

原创 【地理空间】OpenLayers加载geojson文件

OpenLayers简述OpenLayers是用于制作交互式Web地图的开源客户端JavaScript类库,制作的地图几乎可以在所有的浏览器中查看。它可以显示从任何来源加载的地图图块,矢量数据和标记。OpenLayers的开发旨在进一步利用各种地理信息。官网:https://openlayers.org/,在这里可以查找相关api的说明以及实例。通过OpenLayers加载geoJson文件获取geoJson文件参考这篇文章,通过QGIS将osm文件转化为geoJson格式文件。##加载文件

2021-01-15 16:25:28 1255

原创 【Java基础】A*算法在有向图中的应用

A*算法A*(念做:A Star)算法是一种很常用的路径查找和图形遍历算法,有较好的性能和准确度。可参考这篇文章,详细的介绍了它与其他路径查找算法的区别。A* 算法的重点在于计算节点的优先级函数f(n)=g(n)+h(n)。f(n)是节点n的综合优先级。当我们选择下一个要遍历的节点时,我们总会选取综合优先级最高(值最小)的节点。g(n)是节点n距离起点的代价。h(n)是节点n距离终点的预计代价,这也就是A* 算法的启发函数。只要充分理解并掌握这一点,应用A* 算法也不在话下。有向图实现

2020-12-09 11:07:21 1042

原创 【地理空间】通过QGIS将osm格式转化为shp格式文件

QGIS安装QGIS介绍QGIS(原称Quantum GIS)是一个用户界面友好的开源桌面端软件,支持数据的可视化、管理、编辑、分析以及印刷地图的制作,并支持多种矢量、栅格与数据库格式及功能。之所以使用QGIS是因为它是轻量级软件,虽然功能不如ArcGIS强大,但是它安装简单,包含了大部分的基础功能,能够满足日常需求。而我在这里只是做一下文件格式转化的功能,使用QGIS足够了。QGIS安装QGIS安装比较简单,首先打开QGIS官网,点击下载。有各种版本,根据自己的需要选择,我选择的是64

2020-12-02 19:41:28 5024

原创 【Spring基础】自定义线程池及异步调用

背景其实我们经常碰到这样的场景:自定义线程池,然后把业务代码丢到线程池中异步执行。代码在执行的时候,将会在独立的线程中被执行,我们无需等待它的完成,也无需关心它的调用结果。ThreadPoolTaskExecutor新建一个spring项目(点击https://start.spring.io/,根据需要命名,选择Maven或者Gradle,下载压缩包,在IDE中打开解压缩后的文件夹即可。)线程池参数配置可具体根据业务场景需要在配置文件(resources/application.properti

2020-11-03 15:12:36 449

原创 【Spring基础】Spring中的AOP框架

什么是AOPOOP(面向对象编程)提供“从上到下”的关系,而AOP(面向方面编程)提供一种“横切”的方式,也可以说是“从左到右”。简单来说就是将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操作性和可维护性。实例可能光是说AOP的定义,大家都不太能理解。举个例子,比如日志功能,实现这个功能的代码可能是很多类所需要的功能之一,但是如果我们在每一个类里都重复添加实现日志功能的代码,将会有很多重复代码。上代码(代码参考https

2020-10-23 15:33:27 129

原创 【设计模式】工厂模式——简单工厂模式、工厂模式以及抽象工厂模式

背景最近看了一篇挺有意思的漫画https://blog.csdn.net/bjweimengshu/article/details/108459337?utm_medium=distribute.pc_feed.none-task-blog-personrec_tag-7.nonecase&depth_1-utm_source=distribute.pc_feed.none-task-blog-personrec_tag-7.nonecase&request_id=5f6000f2dfc5

2020-09-30 16:33:35 122

原创 【设计模式】拷贝和原型模式

我对于设计模式还是一知半解的,最近看了几个设计模式,单例模式和工厂模式是比较基础和简单的,这里我就不赘述了,但是他们是最为普遍的设计模式,不了解的小伙伴们还是去看看为好。https://www.runoob.com/design-pattern/design-pattern-tutorial.html拷贝关于拷贝,这篇文章写得特别好,深入浅出。总结起来就是:类初始化的过程比作打印,拷贝的过程比作复印。类加载的过程很复杂,如果我们循环的使用new来初始化对象的话,对于性能的压力是非常大的。而拷贝对象不

2020-09-09 14:28:18 197

原创 【Java基础】浅谈反射机制

我对于设计模式还是一知半解的,最近看了几个设计模式,单例模式和工厂模式是比较基础和简单的,这里我就不赘述了,但是他们是最为普遍的设计模式,不了解的小伙伴们还是去看看为好。https://www.runoob.com/design-pattern/design-pattern-tutorial.html反射机制首先我们来了解一下反射的原理。具体参考https://www.cnblogs.com/chanshuyi/p/head_first_of_reflection.html,这篇博文是我认为最容易让人

2020-08-28 15:10:13 210

原创 【Spring基础】@Configuration和@Import

起因偶然间,用到了@Configuration创建Bean,对于@Configuration又学到了一些知识点。单例模式网上查资料,理解有误差,以为单例模式一个类只有一个实例,只能创建一个Bean;但是如果同一个类需要创建多个对象的时候,该怎么办?后来经过大佬的点拨,再加上查找资料,发现:在Spring中,bean可以被定义为两种模式:prototype(多例)和singleton(单例)。singleton(单例):只有一个共享的实例存在,所有对这个bean的请求都会返回这个唯一的实例。p

2020-08-18 15:46:50 2495

原创 【Java基础】面向对象之多态性

为什么要讲多态性最近发现大学时候学习的知识太不扎实了,连面向对象的三大特性都不怎么了解,之前可能学了一个假的面向对象吧。所以打算写一篇关于多态的博客。什么是多态多态指的是一类事物有多种形态。一般是抽象的形式,它们之间是继承的关系。遇到的问题直接切入正题,来讲讲我遇到了什么问题。现在有一个父类:public class People { String name; int age; public People(String name, int age) {

2020-08-07 15:15:27 374

原创 【地理空间】JTS构建R树索引

空间索引(Spatial Indexing)回忆下数据库最基本的操作:增删改查以及稍复杂些的比如连接操作,基本都需要先锁定数据位置,再执行操作。而定位这个步骤,如果没有index,基本都是O(n)的时间复杂度,这是一个非常“耗时”的操作。“找”这个操作就需要定位。注意这里的定位不再是指在存储器上的位置,而是在空间中的位置,这里的空间,是由数据的维度张成的空间。空间数据,也即是这些拥有多维度的数据。这是空间数据的一个比较延展性的说法。但通常,空间数据都focus on 几何类型数据,比如点,线,面,球等,

2020-07-22 11:13:46 1203

原创 初识influxDB——时序数据库

influxDB是什么?参考这篇文章,轻松理解:InfluxDB(时序数据库),常用的一种使用场景:监控数据统计。每毫秒记录一下电脑内存的使用情况,然后就可以根据统计的数据,利用图形化界面(InfluxDB V1一般配合Grafana)制作内存使用情况的折线图;可以理解为按时间记录一些数据(常用的监控数据、埋点统计数据等),然后制作图表做统计;简单来说,就是每一条记录都携带时间。安装安装比较简单,进入官网下载,我是windows,安装InfluxDB 1.8版本的windows版本二进制文件

2020-07-03 16:57:06 613

原创 【地理空间】geotools连接PostgreSQL数据库

geotools快速入门GeoTools是一个开放源代码(LGPL)Java代码库,它提供了符合标准的方法来处理地理空间数据,例如实现地理信息系统(GIS)。步骤参照官网:https://geotools.org/我使用的是idea其实我创建的时候并不是按照官网上的步骤来的,因为我比较习惯从https://start.spring.io/上面构建一个新的maven项目,填写命名下载压缩包,然后在idea中打开。pom中增加依赖包: <properties> <jav

2020-06-22 16:50:14 2451

原创 【地理空间】Uber H3使用

Uber H3地理索引正六边形优点首先正六边形相邻单元距离相等,且近似圆,不仅自身近似圆形,贴合密度概念,很适合大多数的汇总分析场景,而且周围相近近似圆形且等距,方便附近查找,阶梯分析等等。全球怎么划分成正六边形如果光是正六边形是没办法构成一个球体的,所以将全球分为正二十面体,每个交点有五条边,所以交点处有五边形。并且H3支持逐级拆分H3使用H3 Core Library由C写成,但是绑定其他语言,Java也可以调用核心的API。具体参考使用文档:https://h3geo.org/d

2020-06-09 15:19:02 4019

原创 【Spring基础】在Spring中使用Redis

Redis安装教程首先必须在本机上安装Redis数据库,参考Redis安装教程,在使用redis的之前,必须运行redis:1、打开一个 cmd 窗口 使用 cd 命令切换目录到 C:\redis(安装的redis目录下);2、运行redis-server.exe redis.windows.conf命令,在使用redis的时候不能关闭cmd窗口。Iedis插件安装如果想要看到redis里面存放的数据,可以在IntelliJ IDEA里安装插件Iedis。选择Iedis2版本安装,之前安装了Ie

2020-05-22 11:23:30 492

原创 【Spring基础】Spring源码学习(二)

step-2将bean创建放入工厂BeanDefinition用BeanDefinition来描述bean(spring的bean本质上就是Object),相比step-1可以明显的看出来,更加完整了。public class BeanDefinition { private Object bean; private Class beanClass; private String beanClassName; public BeanDefinition() {

2020-05-22 11:21:52 177

原创 【Spring基础】Spring源码学习(一)

目录如何阅读spring源码IOCBeanDefinitionstep-1项目的代码spring源代码AttributeAccessorBeanMetadataElementBeanDefinitionAnnotatedBeanDefinition如何阅读spring源码最近想学习一下spring,但是发现无从下手,看了一些网上的建议,决定这种方法试试。https://www.jianshu.com/p/aae58cd13460总结下来就是:建议不要硬着头皮看spring代码,本身的代码800

2020-05-13 15:02:22 272

原创 【Spring基础】Spring从入门就没有放弃

一些术语的定义POJO“Plain Ordinary Java Object”,简单普通的java对象。没有从任何类继承、也没有实现任何接口,更没有被其它框架侵入的java对象。比如:public class HelloWorld { private String message; public void setMessage(String message){ ...

2020-05-06 18:32:38 261

原创 kafka和zookeeper

初涉Kafka及kafka tool小工具使用指南kafka基础术语的定义拓扑结构kafka tool基本使用下载安装基本使用Zookeeper拓扑结构写流程kafka基础简单来说,kafka就是一个分布式的消息系统(在生产者和消费者之间构建通信),生产-存储-消费的架构。术语的定义Broker:Kafka集群包含一个或多个服务器,每个服务器被称为broker。Topic:每条发布到Ka...

2020-04-28 17:00:09 389

原创 xxl-job的搭建和使用

使用xxl-job搭建作业调度平台xxl-job搭建第一步第二步第三步第四步调度平台的使用执行器xxl-job搭建最近在学习xxl-job调度系统,写个博客记录一下。第一步开源代码地址:https://github.com/xuxueli/xxl-job/releases,这里我下的是最新版本的代码。打开项目工程:第二步将doc目录下的sql脚本导入本地数据库。之前在本地安装了m...

2020-01-13 18:03:53 638

原创 【地理空间】轨迹匹配算法学习总结

轨迹匹配算法总结为什么要做轨迹匹配几何方法隐式马尔科夫模型(HMM)简单的例子问题定义Viterbi算法求解最大可能序列具体实现——[map-matching](https://github.com/graphhopper/map-matching)为什么要做轨迹匹配我们知道地图是通过GPS来实现定位的,但是在现实中GPS获取的位置信息并不是非常精确,尤其是在高速移动的情况下,有可能会定位在水...

2019-10-29 14:12:56 8195 5

原创 【地理空间】TileStache环境搭建

瓦片服务器——TileStacheTileStache可以调用Mapnik渲染工具,自动切片,生成瓦片。第一步:使用mapnik-stylesheets生成xml文件我们对Markdown编辑器首先要下载mapnik-stylesheets,这里面包含了模板,当我们要将数据库文件渲染时,样式的调节非常难把握,这里包含了osm的模板,直接生成xml文件。功能快捷键撤销:Ctrl/Comma...

2019-10-23 10:29:01 734 3

原创 【地理空间】Mapnik渲染PostGIS数据库文件

Mapnik安装好了,就是渲染导入PostGIS的数据库表了。但是这方面的资料太少了,大部分是使用shapefile作为数据源。想把shp格式的文件作为数据源的可以参考添加链接描述我找了很多资料,最后在OSM官网论坛上看到了解决方法。添加链接描述复制,修改参数,终于成功了。如果想继续添加图层的话,修改一下函数的参数即可。...

2019-10-14 11:34:54 519

原创 【地理空间】Mapnik安装编译

把osm数据导入数据库之后,然后用Geoserver发布出来,就是把road、point等等叠加起来,虽然已经具有了地图的雏形,但是距离真正的地图样式还有很长的路要走。Mapnik,强大的渲染引擎,可以直接处理OSM数据,PostGIS数据库,shapefile等。可以看看维基添加链接描述于是我开始安装Mapnik,在安装Mapnik之前要安装python,建议安装python2.7 32b...

2019-10-12 16:29:01 609

原创 【地理空间】通过osm2pgsql导入postgresql数据库

这两天尝试将空间数据导入数据库,过程中出现很多问题,最后终于成功了,感动~首先参考这篇大神的文章https://blog.csdn.net/cao812755156/article/details/80919521,一路顺利进行到最后一步,但是最后导入数据的时候,报错。找了各种原因,甚至使用了osmosis这个工具来导入数据,又失败了只能创建表,但是表里没有任何数据,不过这样下来还是发现os...

2019-10-11 10:39:38 956 1

原创 【地理空间】初识OpenStreetMap

刚刚入职的小菜鸟,领导让我研究一下OpenStreetMap的资料,头秃,由于对于高德地图的依赖性太强了,而且需要花钱,所以OpenStreetMap的好处体现出来了。OpenStreetMap初步了解OpenStreetMap是一款开源地图,但是国内的地图数据不完善,有些地方还一片荒凉,不过这不能否认它的优越性。关于它的一系列的衍生产物,大家想了解的话可以看这里https://blog.gm...

2019-09-30 17:57:30 811 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除