Xiaowo

I Lay My Love On You~

排序:
默认
按更新时间
按访问量

google protobuf 生成的Java对象结构

介绍 .proto Java对象中的方法 methods in interface methods in object methods in Builder 示例 介绍 介绍日后再补,总之想要了解protobuf的工作原理,需要首先知道编程中的“Builder模式”——由于类属...

2018-06-28 01:56:44

阅读数:19

评论数:0

Java处理InterruptedException

机制 在Java中,一个线程是不能终止另一个线程的,除非那个线程自己想退出,或者JVM退出了。 比如: Thread loop = new Thread( new Runnable() { @Override public void run() { whi...

2018-06-14 00:04:19

阅读数:42

评论数:0

Java并发编程:并发任务执行及结果获取

Executor:任务执行 Executor ExecutorService 任务生命周期管理 对任务提交方法的拓展 Future:未来对任务结果的获取 CompletionService:及时获取已完成任务的结果 Executor:任务执行 关系:Executor &am...

2018-06-13 17:54:25

阅读数:35

评论数:0

ThreadLocal原理及内存泄露预防

前言 原理 为什么key使用弱引用 内存泄露 线程池 参阅:http://www.importnew.com/22039.html 前言 ThreadLocal提供了线程独有的局部变量,可以在整个线程存活的过程中随时取用,极大地方便了一些逻辑的实现。常见的ThreadLo...

2018-05-24 13:38:21

阅读数:53

评论数:0

“树”据结构三:B树

前言 起源 问题 时间消耗 索引加速 B树 vs. 多级索引 定义 数据结构 参考 前言 之所以写“树”据结构这一系列的文章,就是因为有一天突然看到了一句话:心里要有B树……是的,做人心里要有B数,做程序员心里一定要有B树。 之前无论是在学校里学B树,还是自己看B树,总是...

2018-05-15 01:35:39

阅读数:38

评论数:0

“树”据结构二:AVL树

前言 定义 节点高度 平衡因子 算法 数据结构 二叉树的旋转 左旋转 右旋转 失衡类型及其调整 L-L L-R R-L R-R Rebalance 增 rebalance after add rotate left rotate right 删 rebalance afte...

2018-05-14 23:01:25

阅读数:26

评论数:0

“树”据结构一:二叉搜索树(Binary Search Tree, BST)

前言 定义 来源 算法 数据结构 查 遍历 增 删 总结 前言 想写两篇关于AVL树和B树的较为详细的介绍,发现需要先介绍二叉搜索树作为先导。 定义 二叉搜索树(Binary Search Thee, BST),也被称为二叉排序树(Binary Sort Tree, B...

2018-05-14 00:27:40

阅读数:37

评论数:0

Java IO的实现

从一个方法看javaIO: public byte[] compress(IWritable value) { if (value == null) return null; try { ByteArrayOutputStrea...

2018-04-20 14:44:01

阅读数:61

评论数:0

DelayQueue实现的Comparable接口

DelayQueue Comparable接口和Delayed接口 外话-线程池 外话-静态内部类DelayQueueDelayQueue是JDK对BlockingQueue接口的一种实现类。对于DelayQueue的介绍,可以参考一篇很不错的文章。Comparable接口和Delayed接口De...

2017-11-28 02:31:34

阅读数:137

评论数:1

对Java8中distinct()的思考

list的转map的另一种猜想 使用distinct给list去重 直接使用distinct失败 原因distinct依赖于equals 重写equals的注意事项 引申 结论 list的转map的另一种猜想Java8使用lambda表达式进行函数式编程可以对集合进行非常方便的操作。一个比较常见的...

2017-11-16 23:59:34

阅读数:1351

评论数:0

mock

mock的由来一开始,没有mock的时候,人们测试的时候只能自己mock。比如需要一个PersonDao类的对象,其中有连接数据库查询数据库当前存储人数的方法getPersonNum()。但是可能因为数据库不存在等问题,其中的操作并不能正确执行,这时候一般:public PerSonDaoMock...

2017-10-25 22:45:02

阅读数:169

评论数:0

Spring xml配置文件头解析

最简洁xml文件头 详解 命名空间 头解析 模式内容Spring的xml配置虽然比较繁琐,不如推荐使用的注解方式简介,但是能读懂xml配置文件还是很重要的,尤其是对于一些老系统的维护,几乎不可避免要面对xml配置文件的问题。现在我们就从默认的xml文件头说起。最简洁xml文件头以下可谓是最简洁的s...

2017-10-20 03:17:42

阅读数:188

评论数:2

Java Map初始化的一个错误:new HashMap().put("a", "b");

今天在使用PowerMock进行代码测试用例编写的时候,需要新建一个map,当时脑一抽,写成了:Map<String, Object> testMap = new HashMap().put("a", "b");然后收到了IDE的友善提醒:Inc...

2017-09-16 19:34:53

阅读数:1398

评论数:0

Archlinux安装UEFI Grub

最近换了电脑,以前的老电脑使用的是旧BIOS架构启动,新电脑都变成了新的BIOS架构即UEFI启动(UEFI是新BIOS架构,自从UEFI出来之后,老的BIOS架构便被称为legacy),在安装grub时比之前稍微麻烦了一点。准备参考教程:https://wiki.archlinux.org/in...

2017-08-27 03:45:07

阅读数:2404

评论数:0

使用枚举实现单例模式

前言 单例模式的实现方式有多种,从最基础的非LazyLoad的懒汉式,到LazyLoad但需要双重检查的饿汉式,再到比较简单实现LazyLoad的静态内部类方式,均可实现单例模式。(忘了的可以查查资料:D 友情链接:http://blog.51cto.com/devbean/203501)不过...

2017-08-10 11:32:20

阅读数:245

评论数:0

Future/FutureTask & Callable/Runnable & Executor/ExecutorService/Executors

用途:笔记。 各类具体方法参阅JDK API。Callable/Runnable接口 Runnable用于实现线程。大多数情况下,如果只想重写 run() 方法,而不重写其他 Thread 方法,那么应使用 Runnable 接口。这很重要,因为除非程序员打算修改或增强类的基本行为,否则不应为该...

2017-07-31 17:03:01

阅读数:123

评论数:0

Java异常处理

Java的异常处理有两种方式: - 默默解决。使用try...catch。 - 甩锅。使用throw和throws。通常,我们喜欢用try/catch捕获异常,然后对异常进行处理。但是有时候,我们也会不予理会,直接将异常扔出去,让调用者自己去处理异常。当然对调用者来说,它也有两种同样的选择:自...

2017-07-28 14:02:35

阅读数:121

评论数:0

快速排序及优化(三路划分等)

快速排序, 是最经典的排序算法之一。快速排序拥有良好的时间复杂度,平均为O(nlog2n)O(nlog_{2}n),最差为O(n2)O(n^2)。在这里,我们不妨略略深入讨论一下快速排序:时间复杂度分析首先说平均时间复杂度。以比较常用的从两头进行扫描的算法为例,算法主要分两步: 1. 是快排的核...

2017-04-19 00:36:02

阅读数:3152

评论数:0

使用StrongSwan配置IPSec

使用StrongSwan对IPSec进行研究,是一种很好的理解IPSec的实践。然而StrongSwan在使用的过程中实在是有太多的坑,网上的教程也多有不完整的地方,几乎没有能彻彻底底说明白每一步的,导致我在使用StrongSwan的过程中各种抓耳挠腮。程序员自然要造福程序员,在这里特将Stron...

2017-03-22 13:55:38

阅读数:12210

评论数:2

C++ 输入输出运算符重载 感想

在C++中,经常会对输入输出运算符进行重载,而在重载的时候用到了友元(Friends)和引用返回(Returning References),这里对为什么会这么用发表一些思考。 比如,下面的类是一个简单的Student类,其中重载了<<和>>。// // Created ...

2017-03-14 17:39:29

阅读数:1635

评论数:0

操作系统(modifying)

操作系统OS对资源的管理,就是对硬件+软件两种资源的管理。 硬件:CPU+存储(主存)+设备 软件:文件(系统) 这就是操作系统的四个章节。进程线程单核达不到程序级并行,但可以达到指令级并行(pipeline)。进程基础概念: 目的:为了实现并发,要不然直接傻瓜调度就行了,就不需要进程了。...

2016-09-20 00:11:37

阅读数:1130

评论数:0

Java打log日志

最近写Java工程,需要在客户端打上log,以便进行出错追踪。刚开始试了一些log4j之类的包,想着功能强大点儿。但是由于配置、版本不兼容、傻叉Windows等一系列问题,最终放弃,干脆直接采用Java自带的log好了。关于Java内置Logger的介绍,比较好的有这篇,可以学习一下其基本用法。但...

2016-08-31 17:37:42

阅读数:14557

评论数:0

Java解析json——Jackson

在Java下,想要解析json文件,已经有了现成的Jackson框架。有几个关于Jackson的基础例子,或者也可以看本文最后的附录。看过之后也就大致了解Jackson的基本用法了。至少Java对象和json的直接转化还是比较简单的。在这里,我主要记录一下自己使用readTree从服务器接收jso...

2016-08-29 18:33:01

阅读数:1743

评论数:0

linux小记:Ubuntu和Arch下的Apache

Apache2在Ubuntu和Arch下,配置文件的组织方式差别还是挺大的。小记一下,因为我过不久肯定就会忘的=.=Ubuntu在Ubuntu下,配置目录在/etc/apache2。在此目录下,主要配置文件是apache2.conf,但是为了更清晰,在Ubuntu上Apache的配置文件是拆分了的...

2016-08-28 17:07:52

阅读数:1291

评论数:0

工厂的模式们

DIY SimpleFactory FactoryMethod AbstractFactory1.DIY没有工厂的年代,客户需要自己造打印机:public class PrinterLgl { private String name = null; public PrinterLgl...

2016-08-09 13:51:28

阅读数:312

评论数:0

linux小记:恍然大明白,sed命令中[commands]的格式

sed是我在linux上最喜欢的命令之一!之前一直觉得sed的格式乱乱的,又是sed '1,2p' fileName,又是sed 's/old/new/g' fileName的,格式千差万别,毫无规律可循!直到今天看到了这篇文章,终于看到了统一点!sed的用法就是:sed [options] [c...

2016-06-05 21:39:55

阅读数:843

评论数:2

linux小记:makefile(随使用程度持续更新)

格式 生成多个可执行程序 PHONY[我的笔记,仅限自己看懂=.=,也会随着我对makefile的需要程度和认知程度乱序更新]格式makefile的格式:target : prerequisites   command  //任意的shell 命令注意这个command可以是任意的shell命令...

2016-05-21 15:40:25

阅读数:256

评论数:0

RMS's gdb Debugger Tutorial

How do I use gdb 1 How do I compile with debugging symbols 2 How do I run programs with the debugger 3 How do I restart a program running in the debu...

2016-05-18 13:09:11

阅读数:823

评论数:0

linux小记:查看dd进度

经常使用dd命令制作linux系统盘,相当方便迅速。但是用了这么久,突然就想,要是能够知道dd现在的进度该多好,于是查了查,果然找到了。刻盘的时候,我们先在一个shell中使用dd,比如我们把Arch Linux的镜像刻到U盘/dev/sdc中:lgl@pArch ~/Downloads $ su...

2016-05-01 14:29:27

阅读数:6613

评论数:0

康托展开 全排列

今天找到了一篇非常好的介绍康托展开的文章!!! http://www.cnblogs.com/1-2-3/archive/2011/04/25/generate-permutation-part2.html根据这篇文章,写出生成按序排列的全排列非常的简单:#include <iostrea...

2016-04-27 15:59:36

阅读数:243

评论数:0

C++使用stringstream进行数据类型转换

(参阅:http://www.cppblog.com/sandywin/archive/2007/07/13/27984.html) 在写程序的过程中,我们经常需要进行数据类型的转换,也经常搞混。但是如果使用stringstream的话,就在也不用担心了。sstreamstringstream在...

2016-04-27 12:26:19

阅读数:355

评论数:0

Linux上使用iptables设置防火墙

因为老师留作业要对Netfilter内核模块进行扩展编程,因此在此之前先学习了一下iptables的用法,笔记一下,忘了就来看看。首先推荐一篇不错的博客,作为参考补充: http://www.cnblogs.com/JemBai/archive/2009/03/19/1416364.htmlip...

2016-04-17 15:35:28

阅读数:4872

评论数:0

复习——查看历史命令前十

呃,其实这是一个很久很古老的话题了。之所以拿来写篇博客,是为了让自己一定一定要记住cut/sort/uniq/tr/sed的用法,别再忘了……(拜托我自己,记性好点儿吧……)   首先,查看自己所有用过的命令历史记录,发现只有这一点儿……lgl@pArch ~ $ cat .bash_histo...

2016-04-03 12:55:34

阅读数:561

评论数:0

使用GPG对文件进行加密解密批处理

在日常生活中,我们一定有许多文件是放在自己电脑里不想让别人看到的。就拿照片举例吧,现在有一个文件夹,里面全是我们拍过的照片,下面让我们一步一步来看看如何使用GPG对它们进行批量加密。 GPG的使用方法可以参阅http://blog.csdn.net/puppylpg/article/detail...

2016-03-18 03:35:00

阅读数:3973

评论数:0

使用GPG学习非对称加密

  非对称加密需要公钥和私钥: 你的公钥的作用:别人用来给你发加密的信息&别人验证你的签名,即加密&amp;amp;验证(别人来做) 你的私钥的作用:你用来创建签名&解密别人发给你的信息的,即解密&amp;amp;签名(你来做)   具体而言,A要想发送加密信息到...

2016-03-16 03:27:07

阅读数:4077

评论数:0

Everything You Need To Know To Start Using GnuPG with Mutt

======================================================================== Everything You Need To Know To Start Using GnuPG with Mutt =========...

2016-03-16 01:32:48

阅读数:647

评论数:0

return临时变量的问题

1. return临时变量问题#include<iostrea> int a,i; int fun() { int b=1,c=2; a=b+c; return a; } i=fun()想问下,是a赋值给i,还是a的临时副本赋值给i?我试过了,会产生临时副本的。兄弟们,我的意思是问,既...

2016-01-29 16:16:40

阅读数:486

评论数:0

HTML中的-head-标签及其内容

head title base meta link script style <head> <head> 标签用于定义文档的头部,它是所有头部元素的容器。 <head> 中的元素可以: - 引用脚本 - 指示浏览器在哪里找到样式表 - 提供元信息 -...

2016-01-29 16:14:35

阅读数:432

评论数:0

计算机网络和因特网大二暑假

计算机网络和因特网 1 什么是因特网 11 架构描述 12 服务描述 13 什么是协议 人类活动的类比 网络协议 14 一些好的超链接 2 网络边缘 21 端系统客户机服务器 22 无连接和面向连接的服务 面向连接服务 无连接服务 3 网络核心 31 电路交换和分组交换 电路交换 电路交换网络中的...

2016-01-29 16:08:53

阅读数:1131

评论数:0

Arch

Arch Arch fstab 文件系统标识 UUID A start job is running for dev-disk-byx2dlabel-swapspacedevice systemd 关于启动时间 systemctl fstab文件/etc/fstab包含了静态文件系统信息,定义了存...

2016-01-29 16:02:01

阅读数:417

评论数:0

鸟哥私房菜大二暑假

鸟哥私房菜鸟哥私房菜 鸟哥私房菜之第五章 鸟哥私房菜之第六章1 鸟哥私房菜之第六章2 鸟哥私房菜之Linux文件和目录管理1 鸟哥私房菜之Linux文件和目录管理2 鸟哥私房菜之Linux文件和目录管理3 鸟哥私房菜之Linux 文件和目录管理4 搜寻档案或目录 鸟哥私房菜2nd之Linux磁盘与...

2016-01-29 16:00:45

阅读数:805

评论数:0

archlinux的JDK默认安装路径

JDK在archlinux的默认安装目录是/usr/lib/jvm/java-8-jdk(根据JDK版本不同而改变目录名),当然,我们可以将JDK安装路径设置为JAVA_HOME。 其实,在/usr/lib/jvm下共有三个文件夹,准确的说,是一个文件夹和两个文件夹的链接:lgl@pArch /...

2016-01-19 15:36:44

阅读数:2881

评论数:0

文法与语言分类

本文参考自《自己动手写编译器、链接器》(DIY Compiler and Linker) 王博俊、张宇编著、《编译原理及编译程序构造》 张莉、杨海燕、史晓华、金茂忠、高仲仪编著 形式语言使用文法和自动机来描述的。文法用于生成语言,自动机用于识别语言。 文法分类 乔姆斯基(Chomsky)对文法...

2015-11-28 14:36:49

阅读数:1663

评论数:0

C2第三次作业

大题 后缀式转中缀式 【问题描述】 将由数字和四则运算符组成的后缀表达式变换为中缀表达式。输入的后缀表达式包含的运算符不超过15个。要求转换后的中缀表达式中不应出现不必要的括号。例如,整个表达式两端的括号要省略,不影响原计算结果的括号要省略。 【输入形式】 程序从标准输...

2015-10-22 21:09:45

阅读数:536

评论数:0

linux图形界面编程基本知识

一直对linux的一些图形界面的基本概念很迷茫,直到看到这些曾经或了解或不了解的东西,收益颇深,特粘在此处作为笔记(阅读过程中也修改了一些原作者描述的不恰当的地方,以防误人子弟,然而一定仍不全面,欢迎指正)。很多LINUX初学者分不清楚linux和X之间,X和Xfree86之间,X和KDE,GNO...

2015-10-21 22:22:06

阅读数:3177

评论数:0

qsort对多维数组和结构体的排序

多维数组对于malloc动态申请的多维数组(指针数组)以一个例子解析: 要求—— 打算操作一个数组,数组的每个元素是一个指针,指向2个元素的数组。元素的大小关系为先比较第一个元素,第一个元素相同比较第二个元素。 首先,通过malloc对指针数组进行分配: 先分配一个指向元素为int *的一维...

2015-10-03 14:12:36

阅读数:3114

评论数:0

C2第一次作业

小题 大题 子串逆置 区间 兑换硬币 实数格式识别 N的分解小题脑残了=.= 8(1分) 以下程序的执行结果是__. int x = 1; void func (int x); main () { func (x); printf (“%d\n”, x...

2015-10-03 11:25:51

阅读数:1243

评论数:0

C2第二次作业

小题 大题 N位质数 泊松分布 母牛问题 螺旋矩阵 判断出栈序列小题 2(1分) 下面四个选项中,均是正确的数值常量或字符常量的是__。 Selection 1 : (A)0.0,0f,8.9e,’&’ (B)”a”,3.9E-2.5,1e1,’\”’ ...

2015-09-27 16:03:54

阅读数:1059

评论数:0

HTML中的<head>标签及其内容

head title base meta link script style<head> <head> 标签用于定义文档的头部,它是所有头部元素的容器。 <head> 中的元素可以: - 引用脚本 - 指示浏览器在哪里找到样式表 - 提供元信息 - ...

2015-08-24 16:33:15

阅读数:6292

评论数:0

为什么浏览器User-agent总是有Mozilla字样

最近在研究计算机网络,对浏览器的http请求报文有所了解,发现一个有趣的现象。搜索了一下,找到以下文章,笑死我了。你是否好奇标识浏览器身份的User-Agent,为什么每个浏览器都有Mozilla字样? Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit...

2015-08-06 16:45:55

阅读数:3483

评论数:2

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