<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[猴子的故事]]></title><description><![CDATA[明天你是否会想起,昨天你写的程序？明天你是否还惦记,曾经爱编程的你！]]></description><link>https://blog.youkuaiyun.com/miclung</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; miclung]]></copyright><item><title><![CDATA[JVM最多能创建多少个线程: unable to create new native thread]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/27547477</link><guid>https://blog.youkuaiyun.com/miclung/article/details/27547477</guid><author>miclung</author><pubDate>Thu, 29 May 2014 17:13:43 +0800</pubDate><description><![CDATA[最近需要测试一个长连接服务器，数据上需要达到100W的长连接，测试的客户端，一个线程保持一个连接，发现linux服务器默认创建到3200多个线程的时候，就会报错这个错误“java.lang.OutOfMemoryError: unable to create new native thread。而且，此时整个系统都不能创新新的线程了，不能连接终端，不能执行任何命令。
貌似是内存不足，但实际内存尚]]></description><category></category></item><item><title><![CDATA[数字验证正则表达式大全]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/27491925</link><guid>https://blog.youkuaiyun.com/miclung/article/details/27491925</guid><author>miclung</author><pubDate>Thu, 29 May 2014 09:56:57 +0800</pubDate><description><![CDATA[验证数字：^[0-9]*$

验证n位的数字：^\d{n}$

验证至少n位数字：^\d{n,}$

验证m-n位的数字：^\d{m,n}$

验证零和非零开头的数字：^(0|[1-9][0-9]*)$

验证有两位小数的正实数：^[0-9]+(.[0-9]{2})?$

验证有1-3位小数的正实数：^[0-9]+(.[0-9]{1,3})?$

验证非零的正整数：^\]]></description><category></category></item><item><title><![CDATA[JVM基础：JVM参数设置、分析]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/25392183</link><guid>https://blog.youkuaiyun.com/miclung/article/details/25392183</guid><author>miclung</author><pubDate>Fri, 09 May 2014 14:26:43 +0800</pubDate><description><![CDATA[不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数，可以极大的减少由于GC工作，而导致的程序运行中断方面的问题，进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程，由于各个程序具备不同的特点，如：web和GUI程序就有很大区别（Web可以适当的停顿，但GUI停顿是客户无法接受的），而且由于跑在各个机器上的配置不同]]></description><category></category></item><item><title><![CDATA[程序员的困境]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/10128059</link><guid>https://blog.youkuaiyun.com/miclung/article/details/10128059</guid><author>miclung</author><pubDate>Tue, 20 Aug 2013 23:34:31 +0800</pubDate><description><![CDATA[最近我为一个内核程序员的职位面试了十几个候选人。这些候选人都来自一些不错的大公司，这些公司在芯片或嵌入式操作系统领域十分有名。这些候选人大多声称自己在内核方面有着十年的在职工作经验。他们的简历看起来非常耀眼——各种相关的项目、术语和奖项……

但他们几乎无人能够回答一个非常基础的问题： 当我们调用标准的 malloc 函数时，内核中会发生什么？

先别吃惊。当我要求其中一位候选人基于 gl]]></description><category></category></item><item><title><![CDATA[插入Mysql数据库是，字符utf8编码超过3位时的错误以及解决，Incorrect string value: '\xF0\xA1\xBF\xA8\xE9\x82...' for column]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/8941371</link><guid>https://blog.youkuaiyun.com/miclung/article/details/8941371</guid><author>miclung</author><pubDate>Fri, 17 May 2013 18:29:07 +0800</pubDate><description><![CDATA[Incorrect string value: '\xF0\xA1\xBF\xA8\xE9\x82...' for column 'last_name'

这个问题出在mysql上，mysql如果设置编码集为utf8那么它最多默认只能支持到3个字节的UTF-8编码，
而4个字节的UTF-8字符还是存在的，这样一来如果你建表的时候用的utf8字符集出异常就理所当然了。

之前遇到过两次]]></description><category></category></item><item><title><![CDATA[mysql字符集查询和设置]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/8721944</link><guid>https://blog.youkuaiyun.com/miclung/article/details/8721944</guid><author>miclung</author><pubDate>Tue, 26 Mar 2013 15:06:45 +0800</pubDate><description><![CDATA[MySQL 乱码的根源是的 MySQL 字符集设置不当的问题，本文汇总了有关查看 MySQL 字符集的命令。包括查看 MySQL 数据库服务器字符集、查看 MySQL 数据库字符集，以及数据表和字段的字符集、当前安装的 MySQL 所支持的字符集等。

一、查看 MySQL 数据库服务器和数据库字符集。

mysql> show variables like '%char%';
+---]]></description><category></category></item><item><title><![CDATA[右键之删除svn项目信息]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/8505879</link><guid>https://blog.youkuaiyun.com/miclung/article/details/8505879</guid><author>miclung</author><pubDate>Tue, 15 Jan 2013 15:16:20 +0800</pubDate><description><![CDATA[删除代码如下：



?






Windows
 Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]

@="Delete
 SVN Folders"

 

[HKEY_LOCAL_MACHINE\SOFTWA]]></description><category></category></item><item><title><![CDATA[MySQL单列索引、组合索引的使用区别]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/8200622</link><guid>https://blog.youkuaiyun.com/miclung/article/details/8200622</guid><author>miclung</author><pubDate>Mon, 19 Nov 2012 17:58:30 +0800</pubDate><description><![CDATA[MySQL单列索引是我们使用MySQL数据库中经常会见到的，MySQL单列索引和组合索引的区别可能有很多人还不是十分的了解，下面就为您分析两者的主要区别，供您参考学习。

　　为了形象地对比两者，再建一个表：






CREATE TABLE myIndex ( i_testID INT NOT NULL AUTO_INCREMENT, 
vc_Name VARCHAR(5]]></description><category></category></item><item><title><![CDATA[grep -A -B]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/8111643</link><guid>https://blog.youkuaiyun.com/miclung/article/details/8111643</guid><author>miclung</author><pubDate>Thu, 25 Oct 2012 16:21:50 +0800</pubDate><description><![CDATA[grep能找出带有关键字的行，但是工作中有时需要找出该行前后的行，下面是解释

　　1. grep -A1 keyword filename

　　找出filename中带有keyword的行，输出中除显示该行外，还显示之后的一行(After 1 or n)

　　2. grep -B1 keyword filename

　　找出filename中带有keyword的行，输出中除]]></description><category></category></item><item><title><![CDATA[INSERT INTO ON DUPLICATE KEY UPDATE 与 REPLACE INTO 和 INSERT IGNORE INTO]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/8111580</link><guid>https://blog.youkuaiyun.com/miclung/article/details/8111580</guid><author>miclung</author><pubDate>Thu, 25 Oct 2012 16:14:11 +0800</pubDate><description><![CDATA[1、REPLACE INTO发现重复的先删除再插入，如果记录有多个字段，在插入的时候如果有的字段没有赋值，那么新插入的记录这些字段为空。
2、INSERT INTO ON DUPLICATE KEY UPDATE发现重复的是更新操作。在原有记录基础上，更新指定字段内容，其它字段内容保留。
3、INSERT IGNORE INTO 发现存在则忽略本条，不再插入数据。




INSER]]></description><category></category></item><item><title><![CDATA[5个须警惕的数据库设计错误]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7903151</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7903151</guid><author>miclung</author><pubDate>Fri, 24 Aug 2012 11:18:13 +0800</pubDate><description><![CDATA[摘要：每个人都会犯错误，但作为数据库管理员，我们应该尽量避免错误的产生，从而为公司降低成本，并随时确保数据质量。下面的五种数据库设计失误必须引起我们的警惕。


每个人都会犯错误，但作为数据库管理员，我们应该尽量避免失误，从而为公司降低成本，并确保数据质量。下面的五个数据库设计失误必须引起我们的警惕。



1.选择恰当的数据类型，避免数据库的过度膨胀

请留意数据类型的选择。例]]></description><category></category></item><item><title><![CDATA[struts2远程执行漏洞学习]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7891176</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7891176</guid><author>miclung</author><pubDate>Tue, 21 Aug 2012 14:39:56 +0800</pubDate><description><![CDATA[首先，这个漏洞已经是比较早的一个了，大概影响范围是struts2.2.1.1以下版本（这个其实是不对的），其次值得参考的参考的网上公开资料有

 

 http://security.ctocio.com.cn/100/11466600.shtml

这是我看过的唯一的一篇对这个漏洞有一定深入讲解的文章。

 

http://www.securityfocus.com/arc]]></description><category></category></item><item><title><![CDATA[清除代码异味]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7887278</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7887278</guid><author>miclung</author><pubDate>Mon, 20 Aug 2012 16:50:08 +0800</pubDate><description><![CDATA[为什么我们需要有质量的代码？

敏捷开发方法是用来应付那些要求代码做大量改动的反馈信息的方法。如果程序没有用一种好的表达方式来表现，那程序会很难读，难维护，难修改。

　　什么是代码异味？

代码异味是一种由写的很差的代码引起的一种有臭味的感觉，一种程序什么地方会有问题的感觉异味更多的是来自一种直觉，而不是一种有据可查的标准，当你看到有味的代码时你就“感觉”到了如果你不把异味清除，不久]]></description><category></category></item><item><title><![CDATA[如何在Linux下生成crypt加密好的密码]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7858902</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7858902</guid><author>miclung</author><pubDate>Mon, 13 Aug 2012 10:11:59 +0800</pubDate><description><![CDATA[linux在添加用户时，如果直接在useradd上面加上-p参数添加密码，这个密码时加密好的密文，这个密码怎么样去生成呢？经常会需要用到crypt命令加密生成的密码格式。那么，有没有其他方式可以生成这种格式的密码？事实上，方法有很多。


1、我们可以用mkpasswd命令：这个命令就是用来生成crypt格式的密码的：

　　mkpasswd

　　输入命令后，程序会要求输入一个密码]]></description><category></category></item><item><title><![CDATA[Linux sed命令实例详解]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7854238</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7854238</guid><author>miclung</author><pubDate>Sat, 11 Aug 2012 11:12:48 +0800</pubDate><description><![CDATA[功能说明：利用script来处理文本文件。

语　　法：sed [-hnV][-e][-f][文本文件]

补充说明：sed可依照script的指令，来处理、编辑文本文件。 

参　　数：
-e或—expression=   以选项中指定的script来处理输入的文本文件。
-f文件>或—file=   以选项中指定的script文件来处理输入的文本文件。
-h或—help 显示]]></description><category></category></item><item><title><![CDATA[通过区位码，获得汉字的拼音的首字母]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7722480</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7722480</guid><author>miclung</author><pubDate>Fri, 06 Jul 2012 16:11:23 +0800</pubDate><description><![CDATA[GB2312标准共收录6763个汉字，其中一级汉字3755个，二级汉字3008个。
分区表示 
GB 2312中对所收汉字进行了“分区”处理，每区含有94个汉字/符号。这种表示方式也称为区位码。
1）01-09区为特殊符号。
2）16-55区为一级汉字，按拼音排序。 
3）56-87区为二级汉字，按部首/笔画排序。
4）10-15区及88-94区则未有编码。
比如，“啊”字是GB23]]></description><category></category></item><item><title><![CDATA[Calendar的add()方法介绍]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7374481</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7374481</guid><author>miclung</author><pubDate>Tue, 20 Mar 2012 15:32:41 +0800</pubDate><description><![CDATA[由于项目当中要统计指定日期的日志记录，是使用Calendar的add方法来进行对日期参数进行相关的动态改变。但是看了java doc上面介绍的不是很清楚，只是说了一下add能够做什么事，并没有介绍如何具体实现。看了网上的一些资料大部分都是在讲add和roll两个方法的区别，其实我们只需要使用add方法就可以解决大部分的功能。比如我们需要得到当前年，月，日，小时，分钟，秒，毫秒的前面时间或者后面时间]]></description><category></category></item><item><title><![CDATA[Quartz 调度，添加，修改，删除 任务,Job]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7350241</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7350241</guid><author>miclung</author><pubDate>Tue, 13 Mar 2012 19:39:31 +0800</pubDate><description><![CDATA[import java.text.ParseException;
import org.quartz.CronTrigger;
import org.quartz.Job;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz]]></description><category></category></item><item><title><![CDATA[JAVA对MYSQL数据库进行批量操作，addBatch(),executeBatch()方法]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7231780</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7231780</guid><author>miclung</author><pubDate>Fri, 03 Feb 2012 16:26:44 +0800</pubDate><description><![CDATA[有人说MySql的JDBC驱动，不是真正支持批量操作的，就算你在代码中调用了批量操作的方法，MySql的JDBC驱动也是按照一般操作来处理的。

但其实并非如此，Mysql 是有特殊的方式优化整个batch insert 结果的。
可不可以先假设 batch 的方式与非batch一样，每一条insrt语句事实上均是单独发往服务器的呢？

浏览下源代码吧。 

好多兄弟都描述了源代码，]]></description><category></category></item><item><title><![CDATA[对字符串进行压缩，压缩成gzip流，效果好不错]]></title><link>https://blog.youkuaiyun.com/miclung/article/details/7231620</link><guid>https://blog.youkuaiyun.com/miclung/article/details/7231620</guid><author>miclung</author><pubDate>Fri, 03 Feb 2012 15:39:10 +0800</pubDate><description><![CDATA[package test;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;

publ]]></description><category></category></item></channel></rss>