自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

cceking的博客

坚持兴趣

  • 博客(57)
  • 资源 (3)
  • 收藏
  • 关注

原创 Ring Buffer 如何实现

环形缓冲区RingBuffer的实现

2022-07-26 21:36:59 612 1

原创 知识管理——从缓存击穿谈起

如何积累编程知识

2022-07-20 21:55:27 310

原创 实例——领域驱动设计DDD

简单总结下项目的DDD应用过程。使用DDD的事件风暴形式拆解。

2022-07-12 22:30:01 1460

原创 liquibase 扩展适配达梦数据库(dm7)

liquibase 适配达梦数据库(dm7),liquibase 的扩展实现

2021-01-30 22:12:42 2962 9

原创 Mybatis报错分析:The alias ‘‘ is already mapped to the value ‘xxx‘

Mybatis报错分析,理解 alias 的值为 '' 时凭啥 Mybatis 得报错 ?

2021-01-19 21:16:58 19600 4

原创 Win10 家庭版 如何安装Hyper-V

win10下hyper-v无法安装,怎么办?

2021-01-16 19:41:40 1225

原创 Picgo + Gitee + Github 搭建免费图库, Typora 自动上传图片

真白嫖,别说,速度还贼快

2020-06-08 00:00:00 1159 6

原创 WebRTC H5页面 实现服务器转发的视频聊天(二) -- 迁移Spring Boot

重构下 WebRTC H5 页面的视频聊天Sample

2020-05-01 21:09:16 1277 1

原创 关于Java Stream的使用心得

关于Java Stream的使用心得最近在review代码,用stream代替一些for,加之用了stream也有一段时间,总结下stream的使用心得。一开始使用目的是为了紧跟java 8的步伐,了解Java 8的特性,觉得很有趣,现在则是为了语义清晰,用少量的代码代替复杂的循环,顺便提高效率(主要也是项目用到了,不然也没机会练熟)。常用的场景目前我用到的场景最多的是ArrayList或...

2018-12-30 23:09:03 412

原创 java.lang.UnsupportedOperationException解决方法

java.lang.UnsupportedOperationException遇到这个异常,原因多半是将Arrays.asList()当成java.util.ArrayList使用了,并且调用了add或者remove的方法,如List list = Arrays.asList(123, 456);list.add(789);解决方法:只要将Arrays.asList()替换成java.u...

2018-10-06 10:23:31 1211

原创 搭建docker下的gitlab

搭建docker下的gitlab查看gitlab的docker镜像有哪些(此步可省略)docker search gitlab下载官网的镜像docker pull docker.io/gitlab/gitlab-ce启动容器#启动docker(使用桥接网络启动docker)docker run -d \ --hostname git.gitla...

2018-08-05 13:22:29 642

原创 H5的template标签和草案中的rel="import"

无关的mark:Chrome浏览器的控制台提供了$(selector)和$$(selector),分别是querySelector() 和 querySelectorAll的一个快速的替代 ,这和jquery无关,所以诸如jquery.parent()啥的是用不了的。H5的template标签想不到H5这么强大,和angular里面的ng-repeat的效果是类似的已经支持了(类似,就是没...

2018-07-30 22:07:19 4549 2

原创 用原生JS模拟双向绑定

用原生JS模拟双向绑定双向绑定看到angular的双向绑定,想模拟实践下,当然运行效率是硬伤。 angular的双向绑定是通过$watch实现的,如$scope的变量都会保存到$$watchers数组中,然后添加$watch监听,实现双向绑定。(关于angular的$watch可自行) 顺便说一句,调试时修改angular里面的变量可以通过angular.element('.myapp...

2018-07-29 21:00:07 1566

原创 mongodb的安装过程和使用

系统安装(window)MSI下载地址:https://www.mongodb.com/download-center#community直接点击即可,不过要注意两个问题。1.安装过程不能勾选安装MongoDB Compass,否则你会发现找不到安装目录,找不到mongoDB这软件。2.直接这样启动不行,需要配置数据文件所在的目录,默认是C:\data\db\,需要自行新建,没...

2018-07-29 11:54:58 643

原创 gitee 搭建个人网站

gitee 搭建个人网站查看是否已生成密钥ls ~/.ssh没有则需要生成密钥ssh-keygen -t rsa -C "[email protected]"添加密钥到ssh-agent(ssh-agent是控制用来保存公钥身份验证所使用的私钥的程序,优点是不用重复输入密码和重复部署私钥)eval "$(ssh-agent -s)"ssh-add ~/.ssh...

2018-07-01 18:46:28 6838

原创 Java下使用opencv进行人脸检测

Java下使用opencv进行人脸检测工作需要,研究下人脸识别,发现opencv比较常用,尽管能检测人脸,但识别率不高,多数是用来获取摄像头的视频流的,提取里面的视频帧,实现人脸识别时通常会和其他框架搭配使用,比如face_recognition、SeetaFace Engine、Facenet。不过这里先简单介绍下opencv在java下的使用(网上大多都是C++的demo,这里是使用其ja...

2018-06-30 17:36:33 2296

原创 WebRTC H5实现服务器转发的视频聊天

WebRTC H5实现服务器转发的视频聊天说明:此处使用到的WebRTC皆为H5的API,实际上调用的是封装在浏览器的WebRTC的库,用于获取实时视频数据,传输数据则是使用WebSocket实现。其中的实例语法只用到原生JS,版本为ES6,可能需要较高版本的浏览器支持(IE一般不支持)。1.获取音视频数据方法:navigator.mediaDevices.getUserMe...

2018-05-13 10:22:11 8924 8

原创 自定义协议

如何自定义协议确定调用的程序。创建注册表并执行。声明协议名和调用的程序、调用的方式。通过URL在浏览器上调用。通过URL向操作系统调用相应的程序。1win10下我测试发现jar是调不了的,exe是可以的,所以建议程序是exe的。简单起见,使用gcc生成测试用的程序,文件名为a.exe。源代码a.c #include <stdio.h>#includ...

2018-04-14 11:04:41 2341

原创 openfire外部插件(外部组件)开发

openfire插件–外部组件开发与外部交互外部组件openfire外部组件,就是与openfire所在的进程没有关系,甚至可以不与openfire在同一台机器上运行的组件,一般是一个可运行的jar包,我们叫做外部组件,使用tcp连接(类似客户端Socket的监听端口)与openfire之间进行通信,处理一些服务器需要处理的逻辑。目前可以使用Whack和Tinder连接操作。...

2018-04-13 21:51:32 1311

原创 openfire的内部插件开发

openfire的插件–内部插件开发插件开发基本插件必须有一个实现Plugin。以创建HelloWorldPlugin为例子(下同)。在src/plugins/下新建目录helloworld,如下在src/plugins/helloworld/src/java下添加插件代码HelloWorldPlugin.javapublic class HelloWorldPlu...

2018-04-13 21:48:31 416

原创 Thrift--实现NodeJS和Java间通信

Thrift–实现NodeJS和Java间通信Apache Thrift 是 Facebook 实现的一种高效的、支持多种编程语言的远程服务调用的框架。 它采用接口描述语言定义并创建服务,支持可扩展的跨语言服务开发,所包含的代码生成引擎可以在多种语言中,如 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, S...

2018-04-07 17:13:41 3346

原创 调研即时通信--XMPP、openfire、Spark

说明:简单记录调研过程,XMPP协议下即时通信工具的编译和使用时遇到的问题,服务端使用openfire,客户端使用Spark (Win)和Converse.js(Web端),安卓端使用的时Smack,此处没写安卓端,因为是其他人负责的:)服务端openfire编译过程参考IntelliJ IDEA openfire 使用IntelliJ IDEA 部署OPENFIRE 服务端遇到的...

2018-04-01 21:23:40 1010 3

原创 移动端H5填坑指南

移动端H5填坑指南移动端H5应用,开发过程中主要遇到的问题:1.适配不同手机;2.布局(固定位置、显示隐藏、栅栏);3.下拉刷新和上滑加载;4.缓存数据;5.跳转与返回;6.输入与虚拟键盘

2017-12-23 21:22:01 1325

原创 java定时任务

定时任务的Java实现就是计划任务啦,只是在项目中这样叫也就习惯了,参考项目中大神的实现。 目的:通过MySQL配置,可以从MySQL中读取参数,按时定时启动和关闭。数据库记录字段包括实现类名(默认为jobName、jobGroupName、triggerName、triggerGroupName),创建时间,调度规则(cron表达式),启动标志,启动参数。 实现:quartz,与Strus2管

2017-09-30 21:23:17 616

原创 用wget下载文件

用wget下载文件刚安装了stardict,打算装备离线词典,毫无意外地用到了for the first time。 默认现在在当前目录。首先 wget http://abloz.com/huzheng/stardict-dic/zh_CN/ 下载试试,下载的是一个名为index.html的网页而已。 然后添加参数 -r 递归试试 wget -r http://abloz.com/huzh

2017-08-17 22:57:39 2314

原创 容易忘的Java基础点

容易忘的Java基础点1.声明明确导入和声明通配导入在性能上无差别。2.变量的声明是为了分配内存,定义即赋值。3.标识符也可用$,但是习惯上字符$只用在机器自动生成的源码上。4.隐式转换指将类型扩宽,而如果从范围大的类型向小的强制类型转换,会截断。5.javac className.java&&java className6.浮点数的下溢近似为0,由于运算也是近似的,除以0不会抛出异常,结果值为无限

2017-08-17 22:41:08 470

原创 Struts2 中StrutsPrepareAndExecuteFilter的研究

通过研究StrutsPrepareAndExecuteFilter的逻辑代码来了解下Struts2。注:Struts2 ver2.1.6。

2017-08-07 23:54:56 656

原创 Struts1和Spring的整合

Struts 1 和 Spring 的整合注意是Struts 1.2.6 和 Spring 2.6的整合,感觉Struts 1现在使用的不多,不过了解下也无妨。步骤如下:1.首先在web.xml中启用ActionServlet,设置过滤的URL2.继承org.apache.struts.action.Action,实现Action层3.配置struts-config.xml,用于生成Action4.

2017-08-07 20:05:45 2502

原创 git上传项目到github

git上传项目到github用Eclipse建了git项目后,通过git bash上传项目到github,当然前提远程库是存在的。

2017-08-07 14:38:47 785

原创 多线程按序执行

多线程按序执行笔试遇到的题目,涉及到多线程,题目大意是有三个线程,分别名为ABC,要求这三线程按序执行十遍打印,打印结果如:ABCABCABC…ABC。

2017-07-13 14:19:32 458

原创 java.util.NoSuchElementException

遇到java.util.NoSuchElementException的分析

2017-06-22 01:52:53 31280 2

原创 g++的思考

这几天在看数据库原理时,提到了查询优化,不禁联想到编译器的优化是怎样的?就比如在汇编中,一般a/2可以通过逻辑右移就得出结果的,这算是优化,不用经过算术指令老老实实地除。 在这情况下,(a+b)/2明显比a/2+b/2更快,那后者在编译器会优化为前者吗?这就是mark的原因。反汇编先来看a/2+b/2,反汇编后,去掉相关的栈操作(子程序eip进出栈),主要显示 0x08048583 <+6>:

2017-06-20 14:57:12 463

原创 简单了解Java本身是怎样判断一个文件是目录

简单了解Java本身是怎样判断一个文件是目录的,实际上File\$isDirectory是调用了windows系统api的GetFileInformationByHandle获取文件夹信息后判断的。

2017-06-18 00:28:25 4283

原创 Java读取pdf中文

直接使用系统字体读取或创建带中文的pdf,需要注意jar的版本。 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.8</version> </dependency>

2017-06-16 15:00:21 1601

原创 Java 8 函数式编程

《Java 8 函数式编程》的笔记简单mark下里面的代码 习题解:https://github.com/RichardWarburton/java-8-lambdas-exercises2.Lamba表达式相当于匿名方法,代码即数据,闭包且适用于函数接口。Lamba可应用在匿名内部类 button.addActionListenr( event -> System.out.println("bu

2017-06-14 20:35:34 984

原创 查看主板型号

运行dxdiag 其中的系统型号即为主板型号(我的已停产,看来要换了==)

2017-02-13 20:38:30 791

原创 Crawler4j学习笔记-util

Crawler4j学习笔记-utilutil有两个类,IO.java和Util.java。IO.java用于文件的操作。 deleteFolder用于删除文件夹,并通过deleteFolderContents删除文件夹内容。 这里是用来删除持久化的url数据的。当使用crawler4j时,会需要配置保存url的文件夹(可用于恢复上次操作)CrawlConfig config = new Craw

2017-01-24 15:20:51 600

原创 java笔记--八成Java开发者解答不了的问题

引申自八成Java开发者解答不了的问题1如下代码,究竟会发生什么?import java.sql.SQLException;public class Test<T extends Exception>{ private void pleaseThrow(final Exception t) throws T{ throw (T) t; }

2016-08-20 22:54:16 759

原创 python下载漫画

下载漫画的脚本身为漫画迷,一直想直接将漫画下载到电脑上看,于是就有这个python脚本。系统:Ubuntu 14.04 python版本:2.7.6 用到的python库有:os (操作系统接口的标准库,用于创建文件)sys (标准库,获取命令行参数)string (字符串操作的标准库,用于将字符串中的数值转换为整型)getopt (对命令行参数进行处理)lxml (当中的html,相

2016-07-26 23:09:04 3562 1

原创 netgarage攻略 -- level1~1evel4

netgarage攻略 – level1~1evel4netgarage攻略 level11evel4介绍netgarage(原来是smashthestack,一段时间没上连网站也改名了)是个IO wargame,关键是要通过一些方式来利用漏洞获取运行程序的控制权,然后你就可以让它做任何事了。(有点不好就是挂机长就会

2016-07-15 21:21:38 1242

opencv的java接口和win库

opencv版本为340的java接口opencv-340.jar,以及window库文件opencv_java340.dll(包括32位和64位)

2018-06-30

openjdk-8-src-b132-03_mar_2014-windows-native.zip

openjdk 8关于windows的native方法的那部分源代码 openjdk 8关于windows的native方法的那部分源代码

2017-06-17

C语言库函数参考手册

C语言库函数参考手册,里面是一大堆得头文件的说明

2014-06-22

空空如也

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

TA关注的人

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