<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[tigerlchen的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/tigerlchen</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tigerlchen]]></copyright><item><title><![CDATA[秒杀Eclipse查看Jar包源码乱码问题]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84427349</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84427349</guid><author>tigerlchen</author><pubDate>Mon, 06 May 2013 21:54:49 +0800</pubDate><description><![CDATA[
原文转自：http://www.xiaoyaochong.net/wordpress/?p=563
遇到的问题
在同一个工作区下，依赖的Jar包如果既有GBK编码，又有UTF-8编码，就会出现的问题。
场景一：如果设置工作区为UTF-8编码来查看GBK编码的Jar包，可以显示正确的中文文字，但是查看GBK编码的Jar包，就会显示乱码。

场景二：反过来，如果设置工作区为GBK编码来查看...]]></description><category></category></item><item><title><![CDATA[Netty对象传输]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84399490</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84399490</guid><author>tigerlchen</author><pubDate>Wed, 06 Mar 2013 15:45:06 +0800</pubDate><description><![CDATA[
转自：http://www.xiaoyaochong.net/wordpress/?p=363
我们知道，Netty使用二进制协议传输对象，那怎么通过Netty进行POJO对象传输呢？我们需要提供一种至支持对象传输的协议，这种协议依然是使用ChannelBuffer作为载体。我们要使用ChannelHandler作为编码和反编码的切入。
 
假设我们现在只需要读取32位整数，虽然这并不是...]]></description><category></category></item><item><title><![CDATA[Java ArrayBlockingQueue源码解析]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84397529</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84397529</guid><author>tigerlchen</author><pubDate>Fri, 01 Mar 2013 17:43:20 +0800</pubDate><description><![CDATA[
转自：http://www.xiaoyaochong.net/wordpress/?p=354
ArrayBlockingQueue是Java并发框架中阻塞队列的最基本的实现，分析这个类就可以知道并发框架中是如何实现阻塞的。
 
笔者工作了一两年之后，还不知道阻塞是如何实现的，当然有一个原因是前期学习的东西比较杂，前后端的东西的懂一点，但是了解的不够深刻，我觉得这是编程学习的禁忌，不管是...]]></description><category></category></item><item><title><![CDATA[Eclipse常用快捷键]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84397372</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84397372</guid><author>tigerlchen</author><pubDate>Fri, 01 Mar 2013 15:10:55 +0800</pubDate><description><![CDATA[Ctrl+1 快速修复(最经典的快捷键,就不用多说了)
Ctrl+D: 删除当前行 
Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑ 当前行和上面一行交互位置(同上)
Alt+← 前一个编辑的页面
Alt+→ 下一个编辑的页面(当然是针对...]]></description><category></category></item><item><title><![CDATA[Java7 TransferQueue入门实例]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84397170</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84397170</guid><author>tigerlchen</author><pubDate>Fri, 01 Mar 2013 10:10:25 +0800</pubDate><description><![CDATA[
转自：http://www.xiaoyaochong.net/wordpress/?p=354
TransferQueue是Java7新加入的一种线程安全的队列，实现了BockingQueue，也就时说这是一个特殊的阻塞队列。TransferQueue目前只有一个实现----LinkedTransferQueue，这是列表结构，意味着它是无边界的Queue。
 
一般的队列在未满的情况下...]]></description><category></category></item><item><title><![CDATA[Java7 使用WatchService监听文件变化]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84395339</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84395339</guid><author>tigerlchen</author><pubDate>Tue, 26 Feb 2013 13:56:18 +0800</pubDate><description><![CDATA[
Watch service 用来观察被注册了的对象的变化和事件。例如，在文件系统监控某一个文件目录下文件资源的创建，修改，删除，这个是WatchService的一种实现方式，用来监听文件状态变化的。是WatchService和Watchable两个接口的配合使用，WatchService类似于在观察者模式中的观察者，Watchable类似域观察者模式中的被观察者。
 
实例如下：
@Te...]]></description><category></category></item><item><title><![CDATA[Java7 AutoCloseable入门实例]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84395171</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84395171</guid><author>tigerlchen</author><pubDate>Tue, 26 Feb 2013 10:03:05 +0800</pubDate><description><![CDATA[
本文转自：http://www.xiaoyaochong.net/wordpress/?p=330
AutoCloseable接口，表示一种不再使用时需要关闭的资源。这个接口下只有一个方法，close()。这个方法在try-with-resource语法下会被自动调用，支持抛出Exception，当然它也鼓励抛出更详细的异常。close()建议不要抛出线程中断的InterruptedExce...]]></description><category></category></item><item><title><![CDATA[Servlet中的Session与Cookie详解]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84392450</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84392450</guid><author>tigerlchen</author><pubDate>Wed, 20 Feb 2013 09:28:24 +0800</pubDate><description><![CDATA[
摘要：虽然session机制在web应用程序中被采用已经很长时间了，但是仍然有很多人不清楚session机制的本质，以至不能正确的应用这一技术。本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答。
 
一、术语session
 
在我的经验里，session这个词被滥用的程度大概仅次于transaction...]]></description><category></category></item><item><title><![CDATA[Java7 ForkJoin入门实例]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84391968</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84391968</guid><author>tigerlchen</author><pubDate>Tue, 19 Feb 2013 10:37:22 +0800</pubDate><description><![CDATA[
本文转自：http://www.xiaoyaochong.net/wordpress/?p=314
Java7引入了Fork Join的概念，来更好的支持并行运算。顾名思义，Fork Join类似与流程语言的分支，合并的概念。也就是说Java7 SE原生支持了在一个主线程中开辟多个分支线程，并且根据分支线程的逻辑来等待(或者不等待)汇集，当然你也可以fork的某一个分支线程中再开辟Fork ...]]></description><category></category></item><item><title><![CDATA[禁止Flash播放器上传]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84385884</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84385884</guid><author>tigerlchen</author><pubDate>Sat, 26 Jan 2013 15:55:57 +0800</pubDate><description><![CDATA[
一、对于32位系统，配置文件mms.cfg 文件存储在以下位置：C:\WINDOWS\system32\Macromed\Flash
二、对于64位系统，配置文件mms.cfg 文件存储在以下位置：C:\windows\SysWOW64\Macromed\flash
 

默认内容如下：
 
AutoUpdateDisable=0SilentAutoUpdateEnable=1
...]]></description><category></category></item><item><title><![CDATA[EclipseLink 2.4新特性]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84382658</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84382658</guid><author>tigerlchen</author><pubDate>Thu, 17 Jan 2013 16:55:46 +0800</pubDate><description><![CDATA[
RESTFul持久化
使用SJON和XML媒介，通过REST可以暴露Java持久化单元。这使得应用可以更简单的暴露他们的持久化特性给包括HTML5和移动客户端的轻量服务框架（ Thin Server Architecture）解决方案。
租户隔离
同一个应用程序将数据存储在数据表中，不同的租户可以通过每个租户的name或者schema唯一标识来管理各自租户的实体，开发者可以通过这样的特性...]]></description><category></category></item><item><title><![CDATA[影响MySQL性能的主要因素]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84382552</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84382552</guid><author>tigerlchen</author><pubDate>Thu, 17 Jan 2013 14:09:24 +0800</pubDate><description><![CDATA[
业务需求对MySQL性能的影响
应用系统中的每一个功能在设计初衷肯定都是出于为用户提供某种服务，或者满足用户的某种需求，但是，并不是每一个功能在最后都能很成功，甚至有些功能的推出可能在整个系统中是画蛇添足。不仅没有为用户提高任何体验度，也没有为用户改进多少功能易用性，反而在整个系统中成为一个累赘，带来资源的浪费。
 
这里我们就拿一个看上去很简单的功能来分析一下。
需求：一个论坛帖子总...]]></description><category></category></item><item><title><![CDATA[MySQL架构]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84381936</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84381936</guid><author>tigerlchen</author><pubDate>Wed, 16 Jan 2013 10:18:59 +0800</pubDate><description><![CDATA[
麻雀虽小，五脏俱全。MySQL虽然以简单著称，但其内部结构并不简单。本章从MySQL逻辑组成，物理组成，以及相关工具这几个角度来介绍MySQL的整体架构组成，希望能够让读者对MySQL有一个更全面深入的了解。
逻辑模块组成
总的来说，MySQL可以看成是二层架构，第一层我们通常叫做SQL层（SQL Layer），在MySQL数据库系统处理底层数据之前的所有工作都是在这一层完成，包括权限判断...]]></description><category></category></item><item><title><![CDATA[Memcached分布式结构和Consistent Hashing算法]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84379265</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84379265</guid><author>tigerlchen</author><pubDate>Thu, 10 Jan 2013 09:38:28 +0800</pubDate><description><![CDATA[
本文转自：http://www.xiaoyaochong.net/wordpress/?p=210
Memcached尽管是“分布式”缓存服务器，但服务器端并没有分布式功能。各个Memchached不会互相通信以共享信息。那么，怎么样进行分布式呢？完全取决于客户端的实现。

下面假设Memcached服务器有node1~node3三台，应用程序要保存键名为“tokyo”、“kanagawa...]]></description><category></category></item><item><title><![CDATA[Java原子变量与ABA问题（转发）]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84377945</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84377945</guid><author>tigerlchen</author><pubDate>Mon, 07 Jan 2013 23:12:50 +0800</pubDate><description><![CDATA[原文地址：http://www.xiaoyaochong.net/wordpress/?p=201 | 逍遥冲
 
ABA问题是一种异常现象：如果在算法中的节点可以被循环使用，那么在使用“比较并交换”指令时就可能出现这个问题（如果在没有垃圾回收机制的环境
中）。在CAS操作中将判断“V的值是否仍然为A？”，并且如果是的话就继续执行更新操作。在大多数情况下，这种判断是足够的。然而，有时候还需要...]]></description><category></category></item><item><title><![CDATA[U盘安装Ubuntu 12.04 Server版（转发）]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84377944</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84377944</guid><author>tigerlchen</author><pubDate>Mon, 07 Jan 2013 23:11:17 +0800</pubDate><description><![CDATA[原文地址: http://www.xiaoyaochong.net/wordpress/?p=137 | 逍遥冲


在网上找了很多教程，都不起效，提示：“从光盘上读取数据出错”。
总结出了几个关键点。
首先，版本，Ubuntu 12.04 Server，一般的U盘安装都会报：“从光盘上读取数据出错”。如果是桌面版(Desktop)，则可以正常安装。
其次，ISO转化成U盘的安装工具，选...]]></description><category></category></item><item><title><![CDATA[U盘容量变小]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84377942</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84377942</guid><author>tigerlchen</author><pubDate>Mon, 07 Jan 2013 23:03:48 +0800</pubDate><description><![CDATA[用win32diskimager制作安装光盘之后，将U盘格式化之后，发现U盘从16G减到了654M。格式化也解决不了，在网上找了很多Step by step的教程，都是坑爹的。
后来想到，是不是因为U盘的分区表变化了照常的。邮件我的电脑-&amp;gt;管理-&amp;gt;磁盘管理，查了一下果然如此：
 

 
在网上下载了一个U盘分区软件----U盘分区精灵。绿色版的，使用简单。
下载地址如下：h...]]></description><category></category></item><item><title><![CDATA[Java简单迭代器例子]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84375955</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84375955</guid><author>tigerlchen</author><pubDate>Fri, 04 Jan 2013 14:18:47 +0800</pubDate><description><![CDATA[一直好奇Foreach的语法，想ArrayList和HashMap，为什么foreach就可以遍历呢，今天自己做了一个简单的实现。
 
public class SimpleForeach&amp;lt;T&amp;gt; implements Iterable&amp;lt;T&amp;gt;, Iterator&amp;lt;T&amp;gt;{
    
    private T[] t;
    
    /**
   ...]]></description><category></category></item><item><title><![CDATA[Java NIO实例]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84373486</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84373486</guid><author>tigerlchen</author><pubDate>Fri, 28 Dec 2012 09:48:51 +0800</pubDate><description><![CDATA[一个可运行的简单NIO实例，首先是一个抽象的服务端类AbstractNIOServer
 
public abstract class AbstractNIOServer implements Runnable {

    // 要监听的端口号
    protected int port;
    // 生成一个信号监视器
    protected Selector s;
...]]></description><category></category></item><item><title><![CDATA[Java NIO选择器Selector]]></title><link>https://blog.youkuaiyun.com/tigerlchen/article/details/84373098</link><guid>https://blog.youkuaiyun.com/tigerlchen/article/details/84373098</guid><author>tigerlchen</author><pubDate>Thu, 27 Dec 2012 13:07:16 +0800</pubDate><description><![CDATA[Selector消息选择器一般作为SelectableChannel对象的多路复用器。
 
可以通过SelectableChannel类的open方法创建选择器，这个方法将使用系统默认选择器提供者(SelectorProvider)创建新的选择器。页可通过调用自定义选择器提供者的openSelector方法来创建选择器。通过选择器的close方法关闭选择器之前，它一直保持打开状态。
 
通...]]></description><category></category></item></channel></rss>