自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Netty实战-如何在web项目中对接第三方tcp协议

公司有一个专门用于对接第三方停车,crm,erp等等业务系统的项目由我负责,十几个场子全都是基于Http实现的,突然有一天实施告诉我有一个基于TCP协议实现的停车系统要接入。坦白讲,最开始我是拒绝的,因为我很难接受要引入一个这么难以维护,并且很大程度上会破坏原有系统边界的玩意,架不住人家就是强势,...

2020-04-24 22:48:06 106 0

原创 golang游戏开发学习笔记-开发一个简单的2D游戏(完成篇)

此文写在golang游戏开发学习笔记-开发一个简单的2D游戏(基础篇)之后,在这篇文章里我们要完成2D游戏场景搭建,人物动画和碰撞检测 文章目录一.创造世界二.碰撞的艺术三.主角的诞生4.还不够抽象5.动起来 一.创造世界 在我们的2D游戏里,游戏地图完全由方块构成,因此首先要基于前文的Game...

2019-07-08 17:07:55 1781 1

原创 golang游戏开发学习笔记-开发一个简单的2D游戏(基础篇)

此文写在golang游戏开发学习笔记-创建一个能自由探索的3D世界之后,感兴趣可以先去那篇文章了解一些基础知识,在这篇文章里我们要创建一个简单的2D游戏场景以及配套的人物,并实现人物运动和碰撞检测功能,效果如下 文章目录一.参考资料二.基础概念三.依赖四.资源准备1.人物静止图2.人物运动图(只...

2019-07-08 11:55:11 7359 0

原创 golang游戏开发学习笔记-创建一个能自由探索的3D世界

此文写作golang游戏开发学习笔记-用golang画一个随时间变化颜色的正方形之后,感兴趣可以先去那篇文章了解一些基础知识,在这篇文章里,我们将创建一个非常简单(只有三个方块)但能自由探索的的3D世界 1.参考资料 learnOpenGl 的中文翻译,使用C++实现的。 go-gl exampl...

2019-07-02 13:25:40 1579 0

原创 golang游戏开发学习笔记-用golang画一个随时间变化颜色的正方形

虽然工作中基本只用到java和javascript但一直对golang比较感兴趣,最近闲来无事,想写个游戏(也是博主一直以来的梦想)但如果直接上游戏引擎就起不到学习的作用了,于是从零开始学习opengl,golang下的opengl文档比较少,应用似乎也不广泛,只能照着C++的文档照猫画虎了 主要...

2019-06-29 22:50:32 289 0

原创 高效读取大数据量excle2007文件的解决方案

网上这方面资料不少,但或多或少都有问题,目前github上有一个开源工具easyexcle,但是其依赖比较复杂,而公司的项目用的还是比较原始的lib包的方式,没有使用包管理工具,于是打算使用poi自己做一个 1.环境 基于poi3.12版本开发 2.原理 excle数据主要基于xml保存,而poi...

2019-06-20 15:31:53 280 0

原创 基于Jquery实现一个cron表达式选择器

(function($){ if(!$){ throw 'cron-selector : JQuery is needed' } var timeTypes = ['second','minute'...

2019-06-06 15:36:55 1095 0

原创 springboot集成mybatis详细教程同时实现自定义拦截器分页功能

目录springboot-Mybatis基础查询1.创建数据库2.springboot引入mybatis3.编写查询映射4.使用自定义拦截器分页 springboot-Mybatis基础查询 1.创建数据库 使用mysql-8.0.11版本的数据库,运行CREATE DATABASE 数据库名创建...

2019-05-29 15:30:24 3979 2

原创 在java代码中运行spark任务报异常org.apache.spark.SparkException: Task not serializable

运行如下java程序代码会报未序列化的异常 import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaPairRDD; import org.apache.spark.api.java.JavaRDD; impo...

2019-01-31 11:16:21 649 1

原创 kafka,rabbitMQ,rocketMQ的消息可靠性保证

1.消息丢失 1.生产者发送失败 所有消息队列都可能发生的问题 生产者发送消息后,队列未成功接收(网络原因或其他)而生产者不知情,消息丢失 生产者发送消息后,队列接收成功->生产者确认,但消息并未持久化,队列崩溃,消息丢失 针对这类问题,三种消息队列都提供了生产者...

2019-01-18 14:49:27 1131 1

原创 使用spring+quartz+react+antd搭建一个定时任务框架

目录使用springboot搭建后端服务1.功能清单2.定时任务功能开发1.依赖2.两个配置文件1.application-dev.yml2.application.yml3.代码1.封装信息合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列...

2018-11-02 10:08:16 549 1

原创 使用webpack搭建react+antd项目

目前网络上关于react和antd的教程有很多,在构建项目阶段大多用create-react-app,dva等脚手架工具进行搭建,使用工具固然方便,却总感觉没能真正完全掌握这门技术,于是自己尝试从头搭建了一个项目 1.环境     本机使用v8.9.4版本的node,开发工具为Visual S...

2018-10-17 17:11:40 3974 1

原创 spring中如何通过注解管理所有路径及对应权限

在为web应用实现权限管理时通常需要我们手动为每个路径添加对应的权限,名称以及相关信息,以便于实现统一管理,但手动录入未免太过繁琐,这里借助注解的方式实现类似swagger的功能,能在开发时直接为路径添加信息,实现统一管理。

2018-09-13 09:40:21 350 0

原创 使用nodejs和python构建一个远程监控系统3.web模块的编写

使用nodejs和python构建一个远程监控系统1.视频采集模块 使用nodejs和python构建一个远程监控系统2.主控程序编写 nodejs搭建的web模块主要负责接收视频信息,转发视频信息,唯一复杂的地方在于要记录每一个与服务器建立了连接的客户端,将图像发送给相应的每个客户端,这里我...

2018-08-02 11:52:16 782 3

原创 使用nodejs和python构建一个远程监控系统2.主控程序编写

使用nodejs和python构建一个远程监控系统1.视频采集模块 使用nodejs和python构建一个远程监控系统3.web模块的编写 视屏采集模块完成之后,开始编写视屏分发程序和主控程序 1.分发器(目前采用UDP协议,以后可以扩展一个支持TCP协议的分发器支持高清视屏传输) #e...

2018-08-02 11:38:23 392 0

原创 使用nodejs和python构建一个远程监控系统1.视频采集模块

使用nodejs和python构建一个远程监控系统2.主控程序编写 使用nodejs和python构建一个远程监控系统3.web模块的编写 如何使用python和nodejs构建一个远程监控系统,不说废话。 1.平台和环境 python3.6,opencv3.0以上(或者cv2版本某些功能...

2018-08-02 11:28:51 1156 0

原创 java连接mysql8.0可能会遇到的坑

用springboot连接8.0.11版本的mysql时碰到的一些坑 com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database ...

2018-07-23 23:30:28 2298 1

原创 在树莓派上如何更方便的安装opencv

由于毕设是用树莓派+opencv做的一个东西,安装环境的时候发现网上关于树莓派上安装opencv的教程基本上都是从一个地方抄过来的,而且都是源码编译,试了很多次都没成功,这里讲讲最简单的方法 此方法只适用于不需要contrib扩展模块功能的用户,如果你需要,老老实实使用源码编译 1.pytho...

2018-01-25 19:33:32 354 0

原创 python+opencv实现目标跟踪

python-opencv3.0新增了一些比较有用的追踪器算法,这里根据官网示例写了一个追踪器类 程序只能运行在安装有opencv3.0以上版本和对应的contrib模块的python解释器   #encoding=utf-8 import cv2 from items import M...

2018-01-19 17:09:45 13615 33

原创 基于大数据的房价分析--4.用spring搭建后端接口

使用的是springMVC框架,目前功能实现的非常简陋,大家做个参考就可以了1.搭建一个maven项目我使用的是idea,直接搭建一个maven项目 在pom.xml中加入如下依赖<dependencies> <dependency> <gro...

2017-12-14 11:26:04 381 4

原创 基于大数据的房价分析--3.echart+百度地图实现数据可视化

要实现的是在百度地图中画出房屋散点图,能进行区域选择,动态刷新显示该区域的房价数据雷达图,具体效果如下 1.在echarts中集成百度地图要使用百度地图,必须要有开发者AK和百度地图js包<script src="http://api.map.baidu.com/api?v=2....

2017-12-14 10:43:45 5607 5

原创 基于大数据的房价分析--2.数据解析

单单只有地址信息是没法在echarts上画出散点图的,必须有经度纬度信息,利用百度地图API可以将地址信息解析为经纬度信息,该API每日可以调取6000次,在申请认证开发者信息后每日可以调取三十万次,足够解析数据了,认证之后按如下操作创建应用 其中应用名称随便输,应用类型选择服务端,IP...

2017-12-10 17:23:20 1509 0

原创 基于大数据的房价分析--1.数据爬取

爬取数据用的是python2.6+scrapy爬虫框架,一开始我写的是一个全站爬虫,可以根据一个种子url爬取58同城所有房价信息,但有个问题就是必须使用代理IP,否则爬虫很快就会被封禁,于是我想了个办法就是在linux中每五分钟运行一次爬虫程序,每次只爬取一个城市的房价信息,代码如下1.spid...

2017-12-10 17:09:09 2331 6

原创 基于大数据的房价分析

大二自学的是python和java,大三却找了个和前端相关的实习工作,好在不是很忙,工作之余做一些自己以前想做懒得做的东西,复习一下python和java,也能增强自己的工作技能,第一个项目就是基于房价的大数据分析1.前置准备1.工具使用的是python2.7下的scrapy爬虫框架,用到的包还有...

2017-12-10 16:48:40 3609 5

原创 scrapy实现增量式爬取

实现爬虫的增量式爬取有两种方法,一是在获得页面解析的内容后判断该内容是否已经被爬取过,二是在发送请求之前判断要被请求的url是否已经被爬取过,前一种方法可以感知每个页面的内容是否发生变化,能获取页面新增或者变化的内容,但是由于要对每个url发送请求,所以速度比较慢,而对网站服务器的压力也比较大,后...

2017-11-22 10:25:36 8410 2

原创 谷歌插件-无法点到百度搜索按钮

1.mainfest.json文件{ "manifest_version": 2, "name": "永远点不到的搜索按钮", "version": "1.0", &...

2017-11-22 08:57:09 197 0

原创 Spring-MVC初步-搭建一个web程序

MVC思想,即”MOD:模型”,”VIEW”:”视图”,”CONTROL”:”控制”分离的思想,其中MOD层用于处理数据,包括业务算法,数据持久层等的实现;VIEW层用于为用户显示数据,比如JSP或html页面等;CONTROL层用于连接MOD层和VIEW层,包括封装数据,渲染数据等.三个部分以最...

2017-11-09 15:56:17 123 0

原创 spring-AOP的实现

AOP(面向切面编程)的理解与实现1.什么是面向切面编程要理解面向切面编程,必须要理解切面的含义,切面是指在程序的许多地方都会应用到的功能,例如对于日志系统来说,记录日志就可以被当做一个切面,在一个应用程序的许多地方,日志都是不可或缺的,但在这些地方,我们主要的关注点却不一定记录日志上,比如当我们...

2017-11-09 15:39:29 201 0

原创 spring-依赖注入的实现

上一篇日志讲了依赖注入的思想和原理,这里总结一下spring中实现依赖注入的具体实现方式1.原理 在spring中,所有的POJO都可以被声明,或者定义为一个组件,通过配置文件,自动扫描,java代码的方式,可以任意装配不同组件 2.方法在spring中,装配组件的方式有三种,分别是自动装配,XM...

2017-11-09 11:55:35 1076 0

原创 Spring初步-依赖注入的原理

要使用一个工具去完成诸多的的任务,必须要理解这个工具的原理和核心思想,而spring最重要的工具毫无疑问是依赖注入(DI)和面向切面编程(AOP),web开发中最重要的思想莫过于mvc思想依赖注入提到依赖注入,我会想到很多与之有关的词 “面向接口编程”,”策略模式”,”命令模式”等等,这些词其实都...

2017-11-07 13:53:36 158 0

原创 fork函数的使用

在linux环境下,一个现有的进程可以调用fork函数创建一个新进程#include<stdio.h> #include<stdlib.h>int main() { char *contents[] = {"message1","messa...

2017-09-27 11:11:36 228 0

原创 阿里云Centos中flask的使用

1.virtualenv的安装和使用(可选)1.安装virtualenv类似于一个虚拟机,可以在里面安装任意包而不会影响全局的python环境,而且不需要管理员权限,我所用的阿里云centos可以直接使用yum install virtualenv,或者也可以用pip install virtua...

2017-09-27 00:25:26 217 0

原创 C中静态库和动态库的使用

1.自定义头文件在C中,编写的头文件如果不在标准头文件目录中是无法使用尖括号包括的,只能使用""包括,例如: #include"目录/头文件名" 或者如果头文件在需要编译的文件的当前目录下,可以不用加目录名 #include"头文件...

2017-09-26 17:47:59 137 0

原创 scrapy初步-简单静态爬虫(爬取电影天堂所有电影)

之前用java写过一个简单的爬取电影天堂信息的爬虫,后来发现用python写这种简单的爬虫程序更简单,异步网络框架在不使用多线程和多进程的情况下也能增加爬取的速度,目前刚开始学scrapy,用这个写了一个爬电影天堂的程序1.环境部署 1:scrapy部署:我是在阿里云的centos+python2...

2017-09-06 23:40:08 1856 0

原创 python多线程

Python提供了两个模块用于实现多线程,thread和threading,thread是低级模块,threading是高级模块,对thread进行了封装,实现多线程有两种方式,分别是将一个函数传入Thread实例,然后调用start方法和继承threading.Thread类,重写_init_和...

2017-09-03 10:31:25 148 0

原创 python进程间通信

python实现进程间的通信有Queue,Pipe,Value+Array等,其中Queue实现多个进程间的通信,而Pipe实现两个进程间通信,而Value+Array使用得是共享内存映射文件的方式,所以速度比较快1.Queue的使用 Queue是多进程安全的队列,可以使用Queue实现多进程之间...

2017-09-02 18:02:32 2399 0

原创 python3多进程实现

python多进程的主要方式有两种,一种是使用os模块的fork方法,另一种方法是使用multiprocessing模块,这两种方法的就别在于前者仅适用于Unix/Linux操作系统,后者是跨平台的实现方式1.使用fork方法实现- fork方法来自Unix/Linux操作系统中提供的一个fork...

2017-09-02 17:10:22 2488 0

原创 python-opencv的使用

打开摄像头(去噪滤波) import cv2 import numpy import matplotlib from matplotlib import pyplotdef show(blur_Func=None,blurSize=(5,5)): capture = cv2.Vi...

2017-08-09 15:05:37 307 0

原创 matlab中fminunc函数的使用

Matlab中fminuch函数的使用方法 1.介绍          fminunc是matlab中的一个优化求解器,可以找到无约束函数的最小值。 2.输入          参数的初始值,例如J(θ)函数的θ的初值          对应的函数和梯度值 例子:          ...

2017-07-30 17:33:43 16629 0

原创 python实现基于UDP的视频直播程序

最近在看线性代数和概率论,有点无聊,于是自己做了一个视频传输程序放松一下 TCP和UDP两种协议这里选用UDP协议,主要因为TCP在传输的时候会产生沾包的状况,而UDP不会有这种问题   1.视频信息的采集 对于摄像头,使用OpenCV打开并获取每一帧的图像,将其封装成字节流进行传输 获...

2017-07-20 11:36:26 3982 8

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