<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[endlesslin的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/endlesslin</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; endlesslin]]></copyright><item><title><![CDATA[过滤表情]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84819203</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84819203</guid><author>endlesslin</author><pubDate>Tue, 27 Sep 2016 17:45:45 +0800</pubDate><description><![CDATA[
public static boolean isEmojiCharacter(char codePoint) {
		return (codePoint == 0x0) ||
				(codePoint == 0x9) ||
				(codePoint == 0xA) ||
				(codePoint == 0xD) ||
				((codePoint &amp;gt;= 0x20) ...]]></description><category></category></item><item><title><![CDATA[MongoDB]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84812783</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84812783</guid><author>endlesslin</author><pubDate>Tue, 09 Aug 2016 15:21:05 +0800</pubDate><description><![CDATA[
MongoDB 是由C++语言编写的，是一个基于分布式文件存储的开源数据库系统。
在高负载的情况下，添加更多的节点，可以保证服务器性能。
MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 将数据存储为一个文档，数据结构由键值(key=&amp;gt;value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档，数组及文档数组。
 
...]]></description><category></category></item><item><title><![CDATA[NoSQL分类]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84812778</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84812778</guid><author>endlesslin</author><pubDate>Tue, 09 Aug 2016 15:03:35 +0800</pubDate><description><![CDATA[

类型
部分代表
特点


列存储
HBase
顾名思义，是按列存储数据的。最大的特点是方便存储结构化和半结构化数据，方便做数据压缩，对针对某一列或者某几列的查询有非常大的IO优势。


文档存储
MongoDB
文档存储一般用类似json的格式存储，存储的内容是文档型的。这样也就有有机会对某些字段建立索引，实现关系数据库的某些功能。


key-value存储
Redis...]]></description><category></category></item><item><title><![CDATA[maven转换成web项目]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84811702</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84811702</guid><author>endlesslin</author><pubDate>Sat, 30 Jul 2016 15:43:52 +0800</pubDate><description><![CDATA[1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web Module的Version为2.5.(3.0为Java7的,Tomcat6不支持). 如果提示错误,可能需要在Java Compiler设置Compiler compliance level 为1.6 .或者需要在此窗口的Java的Version改成1.6. 3.点...]]></description><category></category></item><item><title><![CDATA[ActiveMQ特性]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84810997</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84810997</guid><author>endlesslin</author><pubDate>Sat, 23 Jul 2016 16:28:22 +0800</pubDate><description><![CDATA[

多种语言和协议编写客户端。语言: Java, C, C++, C#, Ruby, Perl, Python, PHP。
应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP
完全支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)
对Spring的支持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持...]]></description><category></category></item><item><title><![CDATA[eclipse更改工作空间]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84810990</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84810990</guid><author>endlesslin</author><pubDate>Sat, 23 Jul 2016 14:52:50 +0800</pubDate><description><![CDATA[\eclipse\configuration\.settings\org.eclipse.ui.ide.prefs]]></description><category></category></item><item><title><![CDATA[IntelliJ Idea 常用快捷键列表]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84806086</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84806086</guid><author>endlesslin</author><pubDate>Mon, 13 Jun 2016 10:57:09 +0800</pubDate><description><![CDATA[
1. IDEA内存优化
因机器本身的配置而配置：
\IntelliJ IDEA 8\bin\idea.exe.vmoptions  -----------------------------------------  -Xms64m  -Xmx256m  -XX:MaxPermSize=92m  -ea  -server  -Dsun.awt.keepWorkingSetOnMinimize...]]></description><category></category></item><item><title><![CDATA[字符串与unicode之间转换]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84803530</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84803530</guid><author>endlesslin</author><pubDate>Sat, 21 May 2016 15:05:03 +0800</pubDate><description><![CDATA[
public static String unicode2Str(String unicode){
		StringBuffer str=new StringBuffer();
		String[] hex=unicode.split(&quot;\\\\u&quot;);
		for(int i=0;i&amp;lt;hex.length;i++){
			str.append(hex[i]);
		}
		...]]></description><category></category></item><item><title><![CDATA[jquery传中文值乱码问题]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84803528</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84803528</guid><author>endlesslin</author><pubDate>Sat, 21 May 2016 14:42:09 +0800</pubDate><description><![CDATA[

提交时采用encodeURI两次编码，例如

type=encodeURI(encodeURI('商品'))
 


在后台action里要对取得的字符串进行decode


URLDecoder.decode(type, “UTF-8″); 

]]></description><category></category></item><item><title><![CDATA[kafka与zookeeper]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84765414</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84765414</guid><author>endlesslin</author><pubDate>Mon, 15 Feb 2016 21:08:10 +0800</pubDate><description><![CDATA[
kafka即使消息被消费，消息仍不会被立即删除。日志文件将会根据broker中的配置要求，保留一定的时间之后删除。
 
如果所有的consumer都具有相同的group,这种情况和queue模式很像，消息将会在consumers之间负载均衡
如果所有的consumer都具有不同的group,那这就是“发布-订阅”，消息将会广播给所有的消费者
 
kafka并没有提供JMS中事务性，消息...]]></description><category></category></item><item><title><![CDATA[redis与memcached]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84765300</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84765300</guid><author>endlesslin</author><pubDate>Sun, 14 Feb 2016 22:10:06 +0800</pubDate><description><![CDATA[
redis不仅仅支持简单的key/value类型的数据，同时还提供list,set,zset,hash等数据结构的存储
redis支持数据的备份，即master-slave模式的数据备份
redis支持数据的持久化，可以将内存中的数据保持在磁盘中，重启的时候可以再次加载进行使用，memcache挂掉后，数据就没了
在redis中，并不是所有的数据都一直存储在内存中。这是和memcached...]]></description><category></category></item><item><title><![CDATA[Spring线程池]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84706320</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84706320</guid><author>endlesslin</author><pubDate>Sat, 14 Mar 2015 14:37:13 +0800</pubDate><description><![CDATA[

了解TaskExecutor接口

当创建了一个新的 Configuration 对象时，它使用一个 maxStrongSize 值为 0 的 MruCacheStorage 缓存来 初 始 化 ， maxSoftSize 的值是 Integer.MAX_VALUE（也就是说在实际中， 是无限大 的）。但是使用 非 0 的 maxStrongSize 对于高负载的服务器来说也许是一个更好的策...]]></description><category></category></item><item><title><![CDATA[模版加载]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84706317</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84706317</guid><author>endlesslin</author><pubDate>Sat, 14 Mar 2015 13:57:40 +0800</pubDate><description><![CDATA[
 

模版加载器

 
当调用 cfg.getTemplate（这里的 cfg 就是Configuration 实例）时，FreeMarker 询 问模板加载器是否已经为 cfg 建立返回给定模板路径的文本，之后 FreeMarker 解析文本生 成模板。
 

内建模版加载器

 
在 Configuration 中可以使用下面的方法来方便建立三种模板加载。（每种方法都 会在其内...]]></description><category></category></item><item><title><![CDATA[JSON]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84705069</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84705069</guid><author>endlesslin</author><pubDate>Sun, 08 Mar 2015 15:22:58 +0800</pubDate><description><![CDATA[
JSON是一种数据格式，不是一种编程语言。
 
JSON的语法可以表示以下三种类型的值。

简单值：使用与JavaScript相同的语法，可以在JSON中表示字符串，数值，布尔值和null。但JSON不支持JavaScript中的特殊值undefined。
对象：对象作为一种复杂数据类型，表示的是一组无序的键值对。而每个键值对中的值可以是简单值，也可以是复杂数据类型的值。
数组：数组也...]]></description><category></category></item><item><title><![CDATA[命名空间]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84704984</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84704984</guid><author>endlesslin</author><pubDate>Sat, 07 Mar 2015 14:26:55 +0800</pubDate><description><![CDATA[
当运行FTL模版时，就会有使用assign和macro指令创建的变量的集合（可能是空的），像这样的变量集合被称为namespace命名空间。在简单的情况下可以只使用一个命名空间，称之为main namespace主命名空间。
 
如果想创建可以重复使用的宏，函数和其他变量的集合，通常用术语来说就是引用library库。
 

创建一个库

 
&amp;lt;#macro copyright...]]></description><category></category></item><item><title><![CDATA[在模版中定义变量]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84703071</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84703071</guid><author>endlesslin</author><pubDate>Thu, 26 Feb 2015 13:22:09 +0800</pubDate><description><![CDATA[
在模版中可以定义三种类型的变量：

简单变量：它能从模版中的任何位置来访问，或者从使用include指令引入的模版访问。可以使用assign或macro指令来创建或替代这些变量。
局部变量：它们只能被设置在宏定义体内，而且只在宏内可见。一个局部变量的生存周期只是宏的调用过程。可以使用local指令在宏定义体内创建或替换局部变量。
循环变量：循环变量是由指令（如list）自动创建，而且它们只...]]></description><category></category></item><item><title><![CDATA[自定义指令]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84703067</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84703067</guid><author>endlesslin</author><pubDate>Thu, 26 Feb 2015 13:05:22 +0800</pubDate><description><![CDATA[
自定义指令可以使用macro指令来定义
 
&amp;lt;#macro greet&amp;gt;
  &amp;lt;font&amp;gt;hello&amp;lt;/font&amp;gt;
&amp;lt;/#macro&amp;gt;
 
 
&amp;lt;#macro greet&amp;gt;和&amp;lt;/#macro&amp;gt;之间的内容（称为宏定义体）当使用它作为指令时将会被执行。你可以在FTL标记中通过@代替#来使用自定义指令。使用变量名作为...]]></description><category></category></item><item><title><![CDATA[内建函数]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84702919</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84702919</guid><author>endlesslin</author><pubDate>Wed, 25 Feb 2015 15:01:31 +0800</pubDate><description><![CDATA[

内建函数以？形式提供变量的不同形式或者其他信息。

 
例如得到字符串的大写形式：user?upper_case。
 

字符串使用的内建函数：


html：字符串中所有的特殊HTML字符都需要用实体引用来代替（比如&amp;lt;代替&amp;amp;lt;）
cap_first：字符串的第一个字母变为大写形式。
lower_case：字符串的小写形式。
upper_case：字符串的大写...]]></description><category></category></item><item><title><![CDATA[freemarker指令]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84702915</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84702915</guid><author>endlesslin</author><pubDate>Wed, 25 Feb 2015 14:40:46 +0800</pubDate><description><![CDATA[
模版+数据模型=输出
 

处理不存在的变量

在变量名后面通过放置？？来询问freemarker一个变量是否存在。将它和if指令合并，那么如果user变量不存在的话将会忽略整个问候代码段：
 
&amp;lt;#if user??&amp;gt;&amp;lt;h1&amp;gt;welcome ${user}!&amp;lt;/h1&amp;gt;&amp;lt;/#if&amp;gt;
 
 
 
...]]></description><category></category></item><item><title><![CDATA[maven仓库]]></title><link>https://blog.youkuaiyun.com/endlesslin/article/details/84702900</link><guid>https://blog.youkuaiyun.com/endlesslin/article/details/84702900</guid><author>endlesslin</author><pubDate>Wed, 25 Feb 2015 13:29:40 +0800</pubDate><description><![CDATA[
maven可以在某个位置统一存储所有maven项目共享的构件，这个统一的位置就是仓库。
 
对于maven来说，仓库只分为两类：本地仓库和远程仓库。当maven根据坐标寻找构件的时候，它首先会查看本地仓库，如果本地仓库存在此构件，则直接使用；如果本地仓库不存在此构件，或者需要查看是否有更新的构件版本，maven就会去远程仓库查找，发现需要的构件之后，下载到本地仓库再使用。
 
中央仓库是...]]></description><category></category></item></channel></rss>