自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 资源 (32)
  • 收藏
  • 关注

原创 Tomcat源码分析-http请求走过的那些路(二)

1. 概述在上篇文章Tomcat源码分析-http请求走过的那些路(一)中,我们主要讲解了一个Http请求如何被tomcat接受。这里我们简单回顾一下。当Tomcat启动后,Acceptor会开启8080端口用于监听请求事件。当接受到请求,Acceptor会经过一系列的处理,通过轮训的方式转接为poller,poller通过事件处理的方式最终交给任务线程池处理。那么今天,我们就从(org.apache.tomcat.util.net. NioEndpoint.SocketProcessor#doRun)

2020-10-26 00:42:55 515 2

原创 Tomcat源码分析-http请求走过的那些路(一)

1.概述前面几篇文章主要针对Tomcat的启动做了较为详细的分析。而对于Tomcat来说,还有一块复杂的业务,那便是Tomcat是如何处理请求的。所以,今天我们就走进Tomcat源码,看看http在Tomcat中经历了哪些弯弯道道。2.Tomcat启动时的那些准备在Tomcat源码分析--启动流程文章中,我们主要对Tomcat的启动做了较为详细的分析。然而为了更好的进入本次主题,还需要对于Connector的启动这一块做更深层次的分析。那么我们就从org.apache.catalina.conn

2020-10-22 00:02:08 390 2

原创 Tomcat源码分析-服务关闭之谜

1.前言如果我问大家Tomcat的启动有哪些方式?关闭又有哪些方式?我想大多数人都会说出很多种方式,毕竟我们都天天和Tomcat打交道。对于Windows系统,我们可以双击startup.bat、双击tomcat.exe、Tomcatw.exe以及通过服务启动。Tomcat关闭我们可以通过执行shutdown.bat、关闭黑窗口、Tomcatw.exe或者服务中都有停止的按钮。当然,针对于前两种启动我们还可以使用暴力的方式关闭黑窗口。而针对于Linux系统,我们一般使用startup.sh开启,shut

2020-10-20 23:37:52 338 1

原创 Tomcat源码分析--启动流程

1.概述要想了解Tomcat的启动流程,必须先弄明白Tomcat有哪些组件。而对于Tomcat组件的层级结构了解,我们必须弄明白Tomcat一个最重要的配置文件“server.xml”,如果有过Tomcat调优经验或者对Tomat有一定了解的话,一定知道这个文件,他位于${tomcat.base}/conf/server.xml。通过这个文件,我们可以配给几乎所有tomcat的参数信息(当然不会包括jvm相关的参数)。那么我们先看一下server.xml的真实面目。为了更清楚的展现Tomcat组件,我把

2020-10-19 23:48:39 3550 15

原创 MyBatis的那些动态Sql

1.前言动态Sql区别于静态Sql的一点就是在程序运行期间根据特定的条件生成的Sql.这里的条件和一般程序语言一样,包括判断、循环、顺序执行。那么为此Mybatis也提供了...

2020-04-04 20:33:05 658

原创 大话布隆过滤器及其应用场景

1.前言今天看博客,有这么一篇文章,他以一道面试题引出了布隆过滤器的概念。这道题大致意思是这样的:假设现在有1000瓶水,其中有一瓶有毒,只要喝一滴,过30天就会毒发身亡。问最少需要多少只小白鼠可以找到有毒的那瓶水,当然是要求30天找到。不然我可以用一只小白鼠实验30*1000=30000天(大约82年)[想想好多人连30000天都活不了,不谈这个伤心的话题了]。那么这个问题怎么解决呢?这里就...

2020-03-31 21:50:25 3957 1

原创 世上最简单mxGraph 导出图片中文乱码问题_分享一次解决问题的心理历程

1.前言正如标题所言,本篇博客并不是写怎么解决这个问题,说实话,这个问题最终解决下来也就是增加了一行有效代码。而真正关注的还是本次我解决这个问题的思路。希望对大家都有所启发、有所帮助。2.背景及问题描述最近在做一个实验管理的项目,涉及到工作流方面的知识,毋庸置疑,我们使用的是Activiti框架。当我们生成流程图的时候,发现涉及到中文名称的节点出现了“乱码”(如下图),这里之所以给乱码...

2020-03-27 14:36:13 1409 3

原创 字符串比较也不是一件容易的事,你信吗?

目录1.前言2.案例一2.1 需求描述2.2 需求分析2.3 代码实现12.4 代码实现22.5小结3.案例二3.1 需求描述3.2 需求分析3.3 代码实现1.前言字符串比较大小对于任何一个程序员来说并不陌生,对于一个Java程序员,我们知道使用String#compareTo(str)或者是String#compareToIgnore...

2020-03-24 23:59:45 1028 1

原创 Mybatis何时了,占位符你知多少

1.前序在Mybatis的世界里,存在两个我们经常用到的占位符,分别是${}和#{}。我们知道在实际开发过程中#{}的使用频率还是极高的;${}使用不当,极为容易引起Sql注入,但他却并没有在Mybatis框架中消失,足见他在框架的地位也不容小觑。他除了保证框架的兼容性,那是否还有其他存在的必要性呢?那么就跟我我的脚步,继续往下看吧。2.数据准备2.1 sql脚本CREATE T...

2020-03-19 22:12:40 2077 3

原创 多线程中的ThreadLocal

1.ThreadLocal概述多线程的并发问题主要存在于多个线程对于同一个变量进行修改产生的数据不一致的问题,同一个变量指的值同一个对象的成员变量或者是同一个类的静态变量。之前我们常听过尽量不要使用静态变量,会引起并发问题,那么随着Spring框架的深入人心,单例中的成员变量也出现了多线程并发问题。Struts2接受参数采用成员变量自动封装,为此在Spring的配置采用多例模式,而Spring...

2020-03-08 22:43:28 756 2

原创 透过ThreadPoolExecutor学习一下代码回滚

1 前言提起回滚,我们首先的能想到是事务回滚。这个词对于一个有一年以上开发经验不陌生。事务是一组组合成逻辑工作单元的操作,虽然系统中可能会出错,但事务将控制和维护事务中每个操作的一致性和完整性。而对于目前SpringBoot盛行的当下,给一个service类添加事务也是轻而易举的事。然而对于代码层面的回滚,我们的回滚意识就很薄弱。那么今天我们就通过JDK提供的并发包中的ThreadPoolEx...

2020-03-01 11:43:45 536

原创 ThreadPoolExecutor隐藏的位运算

1.前期准备为了更好的了解ThreadPoolExecutor位运算,我们有必要先了解一下位运算的基本知识。1.1 运算符号符号 名称 描述 << 左移 空位补0,被移除的高位丢弃 >> 右移 被移位的二进制最高位是0,右移后,空缺位补0,最高位是1,最高位补1 >>> 无符号右移 被...

2020-02-29 11:46:41 467

原创 LRU与LinkedHashMap的不解情缘

1.前言最近在学习Mybatis源码关于一级和二级缓存的过程中,有这么一个类,LruCache.class。按照设计模式来说这里用到了装饰者的设计模式,维护一个接口类【Cache delegate;】的变量。当然这不是重点,重点是他有一个成员变量,keyMap,实例化对象是LinkedHashMap。更要紧的是,他在创建这个对象的时候,还重写了removeEldestEntry这个方法(如下代...

2020-01-05 14:15:11 262 1

原创 基于字节码中try_catch_finally中的return那点事

前几天在公众号看到一篇文章,通过不同实例代码的方式演示了finally语句在return之前还是之后执行。然而,这个问题对于JVM的指令的逻辑顺序是什么样子的?对于最近在重温JVM的我来说,这是远远不能满足我最知识的好奇的。那么下面就让我们看一下指令代码具体的逻辑方式。1.实例代码11.1 代码如下是一段很简单的代码,通过查看指令代码,就不需要所谓的main方法了。/** * ...

2019-11-02 22:39:25 284

原创 插槽slot涉及到的样式污染问题

本次我们主要结合一些案例研究一下vue的插槽中样式污染问题。

2024-01-06 23:27:54 580

原创 一文弄懂vue中样式穿透v-deep

在vue3的世界里,有一个style标签的关键字v-deep,官网称之为样式穿透。那他究竟是什么原理呢?又是这么工作的呢?让我们一起探究一下。

2024-01-06 09:11:26 3189 2

原创 postgresql触发器记录更新日志

postgresql触发器记录更新日志。

2023-12-07 12:43:28 515

原创 ArcGIS API for JavaScript 4.x 实现动态脉冲效果

主要通过定时刷新,每一次的脉冲渲染圈不停的放大,并且透明度缩小,直到达到一定的大小再退回0。

2023-09-09 13:27:04 751 4

原创 基于Jetty9的Geoserver配置https证书

由于Geoserver自带的jetty版本不具备https模块,所以需要下载完整版本jetty。这里需要先查看本地geoserver对应的jetty版本,进入geoserver安装目录,执行如下命令。可以看到当前的jetty版本为。我们需要将etclibmodules三个文件夹拷贝到geoserver对应的目录中。

2023-09-09 13:01:06 723 1

原创 基于postgis实现坐标转换的几个函数

通过表已知的xy坐标转换为geom字段。

2023-09-07 16:33:59 590

原创 postgresql自定义方法创建之坐标的自动转换

postgresql导入点类型的空间数据,一般会提供xy坐标(或者lon和lat)字段,一般的工具并没有提供转换为空间数据的功能。此时,我们需要提供一些方法或者触发器来实现空间字段的自动更新。而xy坐标在导入的时候也会存在两种情况,一种是以度分秒的字符串形式提供,一种是小数的方式提供。所以这里我们还要提供一个针对坐标的归一化函数。下面就是相关设计的方法方法代码。

2023-08-18 14:39:45 695

原创 nginx编译以及通过自定义生成证书配置https

nginx安装编译安装以及配置https,需要软件。因此需要先安装相关软件。:主要用于nginx编译的模块安装以及证书的生成。

2023-08-07 18:02:16 1289

原创 ArcGIS Engine 与 Visual Studio版本对照表

通过C#对于Arcgis的二次开发,需要Visual Studio版本需要与ArcGIS Engine对应,Visual Studio版本的或高或低都不能使ArcObjects SDK for microsoft.Net framework安装成功。下面是各个版本的对照表。如果Visual Studio与ArcGIS Engine不对应,解决办法如下:这里以vs2015与ArcgisEngine10.2安装为例。

2023-07-25 13:41:25 2840 1

原创 基于本地centos构建gdal2.4.4镜像

基于基础镜像构建gdal环境一般特别大,一般少则1.6G,多则2G甚至更大,这对于镜像的迁移造成了极大的不便。究其原因在于容器中有大量的源码文件以及编译中间过程文件,还要大量编译需要的yum库。本文主要通过在centos系统上先构建基础gdal环境,然后将编译好的二进制文件以及动态库拷贝出来。通过DockerFile或者操作容器的方式构建进行。通过这样的方式,镜像700M左右(基础镜像200M+gdal500M)。当然文章末尾还提供压缩的方式导出镜像(大小约250M左右)。

2023-03-05 00:21:11 1342 1

原创 The browser supports WebGL, but initialization failed

在windows server上的浏览器通过cesium预览地图展示,会报错,导致地图不能正常预览。

2023-02-14 14:59:25 3039 2

原创 vmware下linux系统共享本地文件夹

由于vmware自带的vmtools和我当前的系统不兼容,所以需要通过网上下载安装。,每次开机以root用户登陆,就可以直接访问共享文件啦。在/root/.bashrc 中添加命令。这个share就是我们刚才共享的文件夹。

2023-02-11 00:06:12 1298

原创 vsCode添加右击打开文件夹或者文件功能

vsCode有两种安装方式,通过exe执行安装或者绿色版的软件安装。如果使用绿色版软件,不会自动右击文件夹用vscode打开。此时就需要通过修改注册表的方式进行操作。

2023-02-10 23:40:51 1288 1

原创 基于docker部署nexus并创建发布npm包

nexus安装以及npm私有的部署及发布

2022-12-24 01:24:53 1379

原创 Navacat不能删除postgresql数据库的解决办法

在PostgreSQL中,如果一个库正在被使用,我们是无法直接去删除的,会收到如下报错:也就是说,数据库被远程连接后是不能删除数据库的。所以我们必须在本地连接数据进行删除。

2022-12-10 09:55:55 691

原创 HttpServletRequest设置下载文件的扩展名和默认文件名

常见的reponse类型反馈码

2022-10-24 17:42:46 3908

原创 docsify配置flowchart模块

开始用作流开始的第一个节点。默认是startst=>startstart结束用作流结束的最后一个节点。默认是ende=>endend操作表示需要在流中进行的操作。operation输入输出表示在流中发生的输入和输出。IO子程序表示在流程中发生的子程序,并且应该由另一个流程图来记录该子程序。判断允许条件或逻辑语句让流引导到两个路径之一cond=>conditioncondition并行允许同时发生多个流程para=>parallelparallel。...

2022-07-24 14:17:50 418

原创 PostgreSql数据库常用字符串处理函数

数据库常用函数

2022-07-22 09:26:09 1469

原创 gbk与utf8自动识别

UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如果只有一个字节则其最高二进制位为0;如果是多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的位数,其余各字节均以10开头。UTF-8最多可用到6个字节。0xxxxxxx通过上图我们可以知道,0xxxxxxx是占用一个字节,那么他最大代表0~127(000000000~011111111)。这个也就是ASCII编码区,即utf-8完全兼容ASCII编码。我们知道,一个汉子的3个字节,所以对应。...

2022-07-20 20:38:40 2003

原创 基于geotools实现shp图层的合并

对于shp图层的合并功能,也就是说两个shp图层如果出现交集的要合并成一个图斑,对于geotools框架,还没有找到两个shp合并对方法。这里提供了一种思路,供大家参考。

2022-05-23 00:17:38 1535 3

原创 PostGIS源码安装

Postgis源码编译安装教程

2022-05-15 18:32:31 1370

原创 Win10下powershell不能执行npm命令(因为在此系统上禁止运行脚本)

1. 错误描述S E:\study\vuePanorama> npmnpm : 无法加载文件 D:\dev\node-v16.14.2-win-x64\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_E170 中的 about_Execution_Policies。所在位置 行:1 字符: 1+ npm+ ~~~ + CategoryInfo

2022-05-11 16:39:56 1817

原创 Mysql视图中检查选项CASCADED与LOCAL的区别

mysql视图中local与cascaded的区别详解

2022-05-11 12:39:13 3087

原创 ERROR 3948 (42000): Loading local data is disabled; this must be enabled on both the client and serv

在mysql 8.0.26 运行load data local 从本地文本导入数据时,报错:“ERROR 3948(42000): Loading local data is disabled - this must be enabled on both the client and server sides”. 解决办法检查一个全局系统变量 ‘local_infile’ 的状态:mysql> show global variables like 'local_infile';+--------

2022-05-08 00:18:26 554

原创 GeoTiff格式文件说明

1. 前言在TIFF文件结构详解中,我们得知TIFF是Tagged Image File Format的缩写。Tiff对GeoTiff的支持已写入了Tiff6.0,也就是说,GeoTiff是一种Tiff6.0文件,它继承了在Tiff6.0规范中的相应部分,所有的GeoTiff特有的信息都编码在Tiff的一些预留Tag(标签)中,它没有自己的IFD(图像文件目录)、二进制结构以及其它一些对Tiff来说不可见的信息。用来描述GeoTiff流行的众多影射参数及类型信息,如果每一个信息都采用一个标签那将至少需要

2021-12-13 15:18:53 10614 2

原创 Linux下git pull 记住用户名和密码

再linux环境下,每次执行git pull或者git push 都要求输入用户名和密码。用过下面的方式可以记住用户认证信息,不需要重复输入。执行如下命令:git config --global credential.helper store此时会生成一个文件,我们无需关注它。接下来执行git pull或者git push ,此时需要输入用户名和密码,但是再次执行的话就不需要了。清除用户名和密码git config --global credential.helper wincredgit

2021-12-08 13:30:13 1767

gdal2.4.4编译的动态库

通过centos7.9编译gdal的动态库与可执行文件,方便centos版本的docker镜像。

2023-03-05

gdal2.4.4源码编译及相关插件

gdal源码以及相关插件如下: apache-ant-1.10.12-bin.tar.bz2 gdal-2.4.4.tar.gz geos-3.7.3.tar.bz2 hdf-4.2.13.tar.gz hdf5-1.10.5.tar.gz jdk-8u361-linux-x64.tar.gz jpegsrc.v8c.tar.gz netcdf-c-4.4.1.1.tar.gz pcre-8.45.tar.bz2 proj-6.0.0.tar.gz swig-2.0.9.tar.gz

2023-03-03

Postgis_10.7_3.0.2安装包

postgis安装包

2022-05-15

redis-6.2.6_win10.zip

目前redis6版本没有win版本,这里通过Cygwin64进行编译成win10可执行的redis软件包。

2021-11-21

gdal2.4.3+proj4.9.2+geos3.7.2.rar

编译完毕包含proj和geos的gdal程序

2021-11-19

sqllite-3330000.rar

sql官网目前展现的是sqllite336000,如果想要sqlite3330000,可以下载此文件

2021-11-19

redis-6.2.6编译版本

目前redis大多都是源码级别的,这里提供了一个编译好的版本供大家使用

2021-11-09

swigwin-3.0.12.rar

swigwin官网下载还是非常慢的,这里提供下载好的程序,方便大家使用,省去的令人心烦的下载过程。

2021-06-30

gdal2.2.1_java.rar

gdal编译(尤其是java)版本虽然简单,但是在过程中还是有许多不确定因素导致不能顺利编译成功,这里直接提供编译好的版本供大家直接使用。

2021-06-30

geotools依赖.rar

geotools源码构建需要的依赖包要通过科学上网才能获取。为了能顺利帮助小伙伴构建geotools源码,我把需要的依赖包上传上去。供大家使用。

2021-06-25

moosefs安装程序

moosefs安装程序,包括master、chunk、metalogger、client等。方便通过rmp方式安装部署。

2021-06-24

真正离线安装network3.5.rar

网上介绍离线安装.netframework3.5的方法很多,但是一般都不可行,我这里主要通过cab的方式安装.netframework3.5,真正实现了离线安装。本程序只支持windows版本为1809和1909两个版本的操作系统。

2021-03-23

json-tools.rar

一款google插件,主要用于显示json格式的数据,这对于前后端开发都有很大的帮助。可以更便捷的解析json字符串,明确结构。

2020-09-22

google_vue-tools.rar

Vue是一套用于构建用户界面的渐进式JavaScript框架,越来受到前端的青睐。然而他不像其他js代码可以快速进行调试,因而衍生出vue插件。本插件可以直接加载使用。

2020-09-04

项目管理44个过程输入输出工具技术忆巧计法.pdf

软考是作为一个项目经理重要的考试,他为项目经理在实际工作提供有效的指导思想。本资料主要针对软件的44个过程输入输出工具借助图形做了归纳总结,方便大家复习使用。

2020-07-22

项目管理思维导图.rar

本资料主要总结10大项目管理的输入、输出、工具、技术的要点。通过思维导图的形式展现,使各大考生对于项目管理的核心知识点更容易的进行记忆。

2020-07-16

房地产估价师-房地产经营与管理真题.rar

本资源主要收录了2002年-2017年房地产估价师-房地产经营与管理的真题,并排版为word格式,方便大家打印学习。

2020-07-16

房地产估价师-房地产经营管理.pdf

一个将400页的课本容缩至46的讲义。归纳了主要的考点。方便复习考试。排版紧凑,字体略小,但是不影响正常复习使用。

2020-06-22

jenkinsplugins.rar

这里提供了部分jenkins插件,可以直接离线安装,免去忍受下载那个龟速。。这个压缩包中有将近100个插件。是我在安装过程中的用到的插件,希望对大家有帮助。

2020-03-14

datepicker.rar

主要提供datepicker的下载,本压缩包包含四个文件,jquery.ui.core.js\jquery.ui.datepicker.css\jquery.ui.datepicker.js\jquery.ui.widget.js,满足datepicker插件的使用。

2020-02-19

jvisualvm插件JDK1.8_64.zip

本资源是收集了jvisualvm常用的插件,方便下载使用。JDK版本是1.8,这对于内存的监测提供了极大的便利。

2019-11-15

class文件格式.pdf

这篇文档是摘自深入理解Java虚拟机的第六章内容,为了更好的学习,特意整理一份电子版,方便学习。

2019-10-28

JVM指令集.pdf

JVM指令助记符,对于java的字节码研究者是一份不错的选择,便于酷爱者学习。

2019-10-24

房地产估价师理论与方法总结.pdf

马上要进行房地产估价师考试了,希望我的总结能对大家有所帮助。

2019-10-13

sakila-db.tar.gz

主要用于mysql学习使用的测试数据。在官网上下载有些慢,保存一下一遍以后使用。

2019-08-20

高级项目管理师总结

本文总结了项目管理的十大领域、五大过程组以及47过程的ITO口诀,具体文字请自行核实书本。

2019-04-10

jdk6\jdk7_linux_64

linux版本的jdk通过官网下载速度有时候很慢,本资源提供jdk6以及jdk7版本的下载

2019-03-29

信息系统项目管理师考试专业英语考点词汇

信息系统项目管理师考试专业英语考点词汇,近几年常用词汇总结

2018-12-12

notepad++十六进制64位编辑插件

notepad++是一个很好的编辑器,但是他不像Editor Plus自带16进制查看功能,但是插件又不能通过pluginManager下载,所以需要通过其他途径下载。

2018-12-07

系统架构师必须掌握的英语单词(1700筛选1200)

这是为从必备1700个单词中挑选出1020个不常用的单词。从而避重就轻,更高效记住单词。

2018-09-12

rabbitmq_erlang安装包

对于想在centos7安装rabbit的小伙伴,从网上下载有可能会很慢,尤其是rabbitmq所依赖的语言包erlang。

2018-09-02

软件设计师教程第三版

软件设计师教程第三版,但是也满足了当前考试的需求。

2018-07-22

cadence二次开发手册TCL

cadence二次发开手册,使用tcl语言。这个手册使cadence更加智能化。

2018-07-20

owmaggrb owmaggrs owmctab

解决oracel 12c中不能识别函数"wm_concat"的问题,这个函数在11g以上已经屏蔽。

2018-04-24

空空如也

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

TA关注的人

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