自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

feinifi的博客

never stand still

原创 netty实现udp编程示例

netty实现udp编程比普通的java原生api实现udp编程要稍微复杂一些,但是一旦实现了,也很简单,而且我们不用关心socket这部分,我们只需要关注我们的业务代码即可。 这里给出一个模拟udp server与client的示例,看代码部分,两者很像,但是也有区别,server主要偏向...

2020-05-26 10:48:06 15 0

原创 maven在linux下打包会漏掉非java文件

如题所示,这个问题是我在linux下对maven项目进行打包的时候遇到的问题,在项目src/main/java目录中除了java文件之外,有时候会加入一些别的配置比如properties类型的文件,或者meta文件,总之就是与项目开发有关的文件。 当我们在开发的时候,一般是在windows上...

2020-05-23 19:05:24 32 0

原创 maven配置阿里云源

maven构建项目默认使用的源在国外,在下载jar的时候,速度堪忧,一般为了提速,我们会配置为国内源,而国内源中数豆瓣和阿里云的源比较快。这里就设置为阿里云源。 配置文件就是maven安装目录的conf/settings.xml文件。我们编辑该文件,找到mirrors这一部分,取消第一个mi...

2020-05-23 18:50:33 96 0

原创 maven打包加入本地jar

maven项目在开发的时候,有时候,并不是所有的依赖都可以在远程仓库能够获取到,只能是在一些网站下载没有推到公共仓库的jar文件,然后加入到工程的buildpath中,在本地开发运行,不会有问题,但是最后打包部署的时候,会因为缺少这些没有在pom.xml文件中指定的依赖jar而报错。 因此,...

2020-05-22 13:56:59 52 0

原创 ASN.1格式数据编解码总结

前面写了两篇博客,分别介绍了Java语言如何对asn.1格式数据编解码,都是很基础的,尤其是编码规则也是ber,就是basic encoding rules,所以普通的工具或者语言涉及到asn.1的编解码,很多都能实现,包括javascript都能做到ber的编解码。今天需要对asn.1格式数据做...

2020-05-22 00:00:12 39 0

原创 ASN.1 Java编译器使用入门

这篇博客是参照ASN.1 Java编译器使用入门这篇介绍来的。安装插件以及下载运行时环境都是必须的,前面一篇博客介绍了,直接在java语言中定义asn.1实体类,这里,从asn文件开始,通过编译生成java类,然后通过asnrt环境来进行asn.1编解码共工作。 1、在eclipse中安装a...

2020-05-19 23:59:54 44 0

原创 java对asn.1格式数据编解码示例

工作中用到了asn.1格式数据,所以这里对asn.1格式的编解码做一个简单的介绍,主要通过程序来构建与解析asn.1格式数据。asn.1格式一般分为三个部分,分别是类型、长度、值,也就是Tag,Length,Value,简称TLV格式。 类型一般分为以下几种: sequence,也叫集...

2020-05-16 00:17:10 57 0

原创 nodejs遍历一个目录下所有的文件

这个问题是我在实际中遇到的,意思很明确,一个目录下可能还嵌套子目录,我需要遍历出该目录下所有的文件,其实思路很简单,就是利用递归的思路,定义一个函数,传入一个目录路径参数,开始遍历该目录下的文件,如果遇到的是目录,则继续调用该函数,直到所有的目录遍历完成,结束。 这里有个问题,就是我们需要通...

2020-05-14 00:12:33 94 0

原创 windows下安装Node版本管理器nvm

笔者前面有介绍linuxmint下安装Node版本管理器nvm的文章,这里介绍在Windows下的安装,通过nvm的安装,我们可以很方便的下载、安装、切换node版本。在windows上的安装与linux有些区别,这里需要下载一个nvm的压缩包,然后解压缩,最后配置环境变量。 1、下载win...

2020-05-05 18:27:23 93 0

原创 nodejs借助scp2依赖实现windows传输文件到linux

前面提到过,java语言中可以通过scp客户端从windows向linux传输文件,而nodejs中也有scp2这个依赖模块,他可以实现从windows上传文件到linux。 我们可以构建一个测试示例,先安装依赖: $ npm install scp2 --save 编写简...

2020-05-05 11:23:01 59 0

原创 java调用scp实现windows传输文件到linux

linux系统如果开启了ssh服务,就可以在windows系统上通过winscp客户端来传输文件了,而java语言中,也可以类似scp客户端那样,实现文件传输,我们需要借助ch.ethz.ganymed/ganymed-ssh2/build210这个依赖。 我们在maven项目中加入前面提到...

2020-05-05 10:33:45 76 0

原创 nodejs中exports与module.exports区别记录

以前,一直以为,这两者其实差不多的意思,直到今天偶然的一写,发现两者还是有区别的,我们暴露多个方法的示例: 这种方法,肯定是没有问题的,我们调用的时候,也很方便: 另外,这里可以通过module.exports来将add,minus两个对象作为暴露对象: module...

2020-05-03 16:59:23 56 0

原创 局域网内不同网段的设备互相连接设置

这个问题是我在实际中遇到的,如下图所示,我的主机有一个公司内网的IP,可以自动获取,也可以设置固定IP,不管怎么样,网段是172.16.0.xxx,不同的部分只是这里的xxx,我的主机IP是172.16.0.83。 但是有时候,我们会从别的地方拿过来一块开发板,而开发板内部的IP基本是写死的...

2020-05-02 18:46:53 291 0

原创 vue构建electron桌面应用

electron桌面应用,可以结合前端框架vue使用,而我们也可以通过vue工具来构建electron的应用,这就需要我们全局安装vue-cli,通过vue构建electron应用的脚手架,推荐使用SimulatedGREG/electron-vue,这个与我们的webpack构建方式很像,也是v...

2020-05-01 22:38:18 115 0

原创 windows系统删除无用的服务

windows系统中,经常会出现各种广告或者资讯的服务,我们在服务列表里面还无法删除,最多只能禁用。但是可以在命令行下面通过sc delete servicename的方式来删除,例如,我们系统中出现的QQ电脑管家实时防护这个服务。 这个服务还有一个特点,就是名字中间有空格,我们可以通...

2020-04-30 23:56:48 96 0

原创 使用U盘安装win7系统遇到“缺少所需的 CD/DVD 驱动器设备驱动程序”解决办法

win7系统不支持usb3.0,所以在做系统的时候,需要安装usb3.0驱动。

2020-04-30 15:52:52 154 0

原创 Promise结合reduce构建顺序执行队列

Promise是一个解决函数异步执行的对象,有了这个对象,我们可以构造异步执行的操作。Promise对象可以通过链式调用的方式进行异步操作,语法如下: 如下代码,是一个简单的异步方法。 new Promise((resolve,reject)=>{ console.log(...

2020-04-29 10:34:41 85 0

原创 nc工具测试tcp/udp协议

nc是netcat的缩写,在windows系统上,需要单独下载安装。netcat在windows系统上安装很简单,需要到如下页面https://eternallybored.org/misc/netcat/,下载一个压缩包,然后解压,将路径加入环境变量Path中即可。如下所示,是nc的帮助文档: ...

2020-04-27 13:29:21 130 0

原创 Java编程UDP简单示例

UDP传输协议是一种常见的传输协议,但是在实际中,运用的很少,一般都是使用TCP协议,因为TCP传输协议是安全可靠的传输协议,可以保证数据的完整性,但是对于传输效率而言没有UDP高。而UDP因为不需要保证数据传输可靠性,牺牲了可靠性,反而传输效率会高很多。对于有些场景,比如频繁上报的心跳数据,或者...

2020-04-27 10:07:21 51 0

原创 npm install安装依赖报错 Error: spawn powershell.exe ENOENT解决办法

在windows电脑上通过npm install安装 windows-build-tools的时候报如题所示的错误,一般这种错误,基本都是环境变量的问题,我这里是因为在Path环境变量下找不到powershell.exe,解决办法很简单,就是找到powershell.exe所在的目录,然后加入Pa...

2020-04-21 09:30:19 378 1

原创 electron结合serialport插件开发硬件指令操作项目

electron可以开发桌面系统,serialport包是node环境下连接串口设备的,如果是用electron做硬件连接项目,需要考虑加入serialport包,但是我们直接npm install安装的,会因为binding的问题,在运行的时候报错,所以,一般会在下载依赖包之后,通过electr...

2020-04-18 18:10:00 144 0

原创 linuxmint下安装nvm来管理node版本

nvm是一个node版本控制的工具,他可以查看可以安装的node版本,安装node,以及切换node版本,传统的node安装,我们是下载压缩包,然后指定环境变量,当我们需要升级node的时候,需要重新下载node压缩包,更新或者回退版本显得有些麻烦,而使用nvm可以安装多个node,使用哪一个,可...

2020-04-17 12:16:22 80 0

原创 汉诺塔问题求解办法

汉诺塔问题古老的历史,我们在实际中就不去纠结了,直接看大致描述:有三个柱子,分别为A,B,C,在A柱子上,有n个从大到小堆在一起的盘子,现在要借助B柱子,把A上面的盘子,全部移动到C柱子上,移动的过程中,需要保证大盘子在下面,小盘子在大盘子的上面。类似这样的效果: 汉诺塔问题的求解是需...

2020-04-16 15:59:54 56 0

原创 docker使用遇到问题Got permission denied while trying to connect to the Docker daemon socket

docker安装完成,一般用户没有权限启动docker服务,只能通过sudo来通过root用户权限来启动docker,此时对于一般用户而言,需要执行docker ps或者docker images命令查看容器或者镜像提示如题所示的错误。 解决办法: 1、使用sudo docke...

2020-04-14 14:26:02 109 0

原创 Mycat数据库中间件初体验

Mycat是阿里开源的数据库中间件,用java语言编写,目前是1.x版本,2.0版本正在研发中。 Mycat支持的数据库很多,目前常用的基本都包含了,mysql,postgresql,sqlserver,oracle,db2等等。Mycat的作用和其他中间件一样,最简单的功能来说,就是支持分...

2020-04-08 15:58:41 59 0

原创 docker使用Dockerfile构建镜像

docker获取镜像,除了docker pull,docker load之外还可以通过自定义Dockerfile的方式通过命令docker build 来构建新镜像。通过这种方式 可以很自由的定义想要安装的镜像,想要安装的软件,配置环境变量,更改配置文件等一切人为操作。先介绍Dockerfile中...

2020-03-26 21:39:49 62 0

原创 docker私有镜像服务搭建

docker容器技术已经在部署服务上使用的非常普遍,主要是它的隔离性以及快速启动的特性,一般启动一个容器,如果镜像不存在会先去dockerhub仓库下载,然后存储在本地,后续可以继续或者反复使用这个镜像,但是一旦这个镜像被删除了,或者需要一个新的镜像的时候,我们还是需要远程下载,网速如果不给力的话...

2020-03-26 15:19:56 110 0

原创 docker-compose构建mongodb容器实例

docker-compose可以一次性开启多个docker实例,这一点比Dockerfile来构建docker容器要方便的多。docker-compose的重点是对yml文件的配置。yml文件的配置需要注意的是严格控制缩进。 需要说明的一点是docker-compose命令并不是随着dock...

2020-03-25 17:14:49 310 0

原创 C++打印整数的八进制十进制十六进制以及打印逻辑布尔类型

C++中打印一个整数的八进制,十进制,十六进制很方便,无需定义别的函数或者方法,直接通过关键字oct,dec,hex就可以,另外打印布尔类型可以通过关键字boolalpha,下面直接看代码: #include <iostream> using namespace std; int ...

2020-03-08 11:16:23 89 0

原创 mysql中日期时间戳timestamp使用小结

timestamp时间戳类型在mysql数据库中比较常见,但是我们很容易忽视它的一些特征,这个我在面试中吃过亏,这里对他的一些用法和特点补充一下。也给让自己加深印象。一般来说,我们使用日期类型,一般采用date,或者datetime,也有time类型。 下面大致说明一下timestamp与d...

2020-03-07 23:01:36 109 0

原创 MFC与第三方类库CWebPage开发javascript函数调用示例

今天思索一个问题,想着怎么用c++调用百度地图,结果网上有一篇文章介绍了如何使用MFC项目来结合CWebPage来调用百度地图。看了整篇博客,思路很清晰,但是看下来,其实就是利用了MFC调用html页面的javascript函数来达到调用百度地图的目的。本质上还是web应用的地图。不是真正意义上的...

2020-03-06 23:50:27 104 0

原创 google浏览器打开出现“喔唷,崩溃啦”解决办法

最近在一次使用google chrome中,对浏览器做了一次升级,然后打开浏览器,发现输入url,或者打开设置、书签等等都显示“喔唷,奔溃啦”提示。这个错误,刚开始以为是安装的版本不对,然后回退,还是同样的提示。根据本人的摸索,大致有两种解决办法。 一、右键桌面上的浏览器快捷方式图标,选择属...

2020-03-05 13:52:46 862 0

原创 Electron开启javascript开发窗口应用之旅

在大概一年之前,我当时还说nodejs或者javascript无法开发出窗口程序,后来有人打脸了,说electron可以,当时还不以为然,觉着不可思议,但是直到今天,electron已经可以很方便的开发出窗口程序了,真的是发展迅速啊,而且开发非常的方便,环境安装也很简单,就需要node开发环境即可...

2020-03-04 23:59:05 134 0

原创 npm install出现error MSB3428:Could not load the Visual C++ component VCBuild.exe错误

我们在windows平台上运行npm install安装依赖的时候,会出现需要vcbuild环境,如下截图所示,根据提示解决办法是指定系统安装的vcbuild到环境变量的Path中。 解决办法就是通过npm全局安装windows-build-tools模块,还需要加上参数--produc...

2020-03-04 16:42:16 201 0

原创 LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16错误解决办法

如题所示,使用vc++6.0创建项目的时候,因为选择的类型不对,本来是控制台程序Win32 Console Application,结果选择了窗口程序Win32 Application。在编译的时候不会报错,但是构建链接的时候报错,因为窗口程序主函数入口是WinMain(),而控制台应用程序主函数...

2020-03-02 15:48:28 290 0

原创 JavaScript通过正则实现日期格式化

formatDate:function(time,format){ var date = new Date(time); var map ={ 'M' : date.getMonth()+1,//month ...

2020-02-29 23:51:42 188 0

原创 记录vue国际化i18n的使用

vue框架如果考虑多语言,可以使用vue-i18n,安装的话,直接通过npm install vue-i18n --save将依赖库加入到当前vue项目中。另外,我们需要配置多语言文件,这里以中文和英文为例,我们在assets目录下新建languages目录,然后新建zh.json和en.json...

2020-02-29 23:24:45 72 0

原创 vue-cli Failed to download repo vuejs-templates/webpack连接超时解决办法

如题所示,通过vue-cli工具命令vue init webpack vuedemo创建vue项目的时候报错,提示连接超时,应该是下载某个package的时候,需要翻墙,导致出现连接超时。超时错误截图如下: 按照网络上的提示,解决办法是改为离线创建,我们需要下载github仓库中的vu...

2020-02-29 18:04:03 363 0

原创 nodejs中追加内容到文件

我们在nodejs开发中,有时候会遇到文件读写问题,在写文件的时候,我们会有这样的场景,需要向文件中循环添加内容,这时候,如果调用writeFile(path,data)或者writeFileSync(path,data),只会将最后一次写入的内容加入到文件中,而不是追加内容到文件,我们需要使用a...

2020-02-27 23:41:17 1198 0

原创 linuxmint下gcc编译报错:zlib version 1.2.1 or higher is required

如题所示,在linuxmint系统上通过gcc编译一个工具,报错: 通过dpkg -l命令查看系统的zlib库,是有zlib1g,这个就是最新的。 很多地方说要安装zlib1g-dev,如是,试着安装: 安装完成,继续编译,竟然通过了。 有点不...

2020-01-21 15:03:48 113 0

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