<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[subuser的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/subuser</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; subuser]]></copyright><item><title><![CDATA[tomcat源码阅读(二)  Digester方法详解]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/49763489</link><guid>https://blog.youkuaiyun.com/subuser/article/details/49763489</guid><author>subuser</author><pubDate>Tue, 10 Nov 2015 18:32:19 +0800</pubDate><description><![CDATA[Digester方法详解：
1.  通读Digester之前先分析下他的结构：
             1.1该类继承了方法DefaultHandler2，DefaultHandler2继承了DefaultHandler是和sax解析器配合使用的类。当sax在对字符流进行加工的时候会根据实际情况调用   DefaultHandler中的方法。其使用的设计模式为模板模式。
         ]]></description><category></category></item><item><title><![CDATA[tomcat源码阅读(一)  入口]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/49763415</link><guid>https://blog.youkuaiyun.com/subuser/article/details/49763415</guid><author>subuser</author><pubDate>Tue, 10 Nov 2015 18:17:55 +0800</pubDate><description><![CDATA[程序启动入口： org.apache.catalina.startup.Bootstrap的main方法，其最终会调用到org.apache.catalina.startup.Catalina的load()和start()方法。]]></description><category></category></item><item><title><![CDATA[js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/48339633</link><guid>https://blog.youkuaiyun.com/subuser/article/details/48339633</guid><author>subuser</author><pubDate>Thu, 10 Sep 2015 10:22:09 +0800</pubDate><description><![CDATA[js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件嵌套的div元素]]></description><category></category></item><item><title><![CDATA[Java 中Comparable和Comparator区别比较]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/48055671</link><guid>https://blog.youkuaiyun.com/subuser/article/details/48055671</guid><author>subuser</author><pubDate>Fri, 28 Aug 2015 17:56:19 +0800</pubDate><description><![CDATA[Comparable 是排序接口:
          若一个类实现了Comparable接口，就意味着“该类支持排序”。  即然实现Comparable接口的类支持排序，假设现在存在“实现Comparable接口的类的对象的List列表(或数组)”，则该List列表(或数组)可以通过 Collections.sort（或 Arrays.sort）进行排序。
         此外，“实现Co]]></description><category></category></item><item><title><![CDATA[动态代理内部实现]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/48047937</link><guid>https://blog.youkuaiyun.com/subuser/article/details/48047937</guid><author>subuser</author><pubDate>Fri, 28 Aug 2015 10:04:17 +0800</pubDate><description><![CDATA[原文地址：http://www.cnblogs.com/flyoung2008/archive/2013/08/11/3251148.html

Proxy的主要静态变量
// 映射表：用于维护类装载器对象到其对应的代理类缓存
private static Map loaderToCache = new WeakHashMap(); 

// 标记：用于标记一个动态代理类正在被创建中
pri]]></description><category></category></item><item><title><![CDATA[java动态代理详解]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/48047889</link><guid>https://blog.youkuaiyun.com/subuser/article/details/48047889</guid><author>subuser</author><pubDate>Fri, 28 Aug 2015 09:59:20 +0800</pubDate><description><![CDATA[代理模式示例代码：
public interface Subject   
{   
  public void doSomething();   
}   
public class RealSubject implements Subject   
{   
  public void doSomething()   
  {   
    System.out.println( "call]]></description><category></category></item><item><title><![CDATA[java ASM]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/48003207</link><guid>https://blog.youkuaiyun.com/subuser/article/details/48003207</guid><author>subuser</author><pubDate>Wed, 26 Aug 2015 14:42:55 +0800</pubDate><description><![CDATA[Java ASM
我们知道Java是静态语言，而python、ruby是动态语言，Java程序一旦写好很难在运行时更改类的行为，而python、ruby可以。
不过基于bytecode层面上我们可以做一些手脚，来使Java程序多一些灵活性和Magic，ASM就是这样一个应用广泛的开源库。

ASM is a Java bytecode manipulation framework. It ]]></description><category></category></item><item><title><![CDATA[java 随机函数比较]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47976737</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47976737</guid><author>subuser</author><pubDate>Tue, 25 Aug 2015 14:36:05 +0800</pubDate><description><![CDATA[文章原文地址：http://blog.sina.com.cn/s/blog_93dc666c0101h3gd.html

今天在做Java练习的时候注意到了Java里面的一个随机函数——Random，刚开始只是知道这个函数具有随机取值的作用，于是上网搜索了资料一番，做了一下一些关于Random函数的总结：


Java中存在着两种Random函数：
一、java.lang.Math.R]]></description><category></category></item><item><title><![CDATA[classLoader获取的几种方式]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47722817</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47722817</guid><author>subuser</author><pubDate>Mon, 17 Aug 2015 11:32:57 +0800</pubDate><description><![CDATA[public static Class loadClass(String className, Class callingClass) throws ClassNotFoundException {
        try {
            return Thread.currentThread().getContextClassLoader().loadClass(classNam]]></description><category></category></item><item><title><![CDATA[action属性注入为null]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47661655</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47661655</guid><author>subuser</author><pubDate>Fri, 14 Aug 2015 14:59:14 +0800</pubDate><description><![CDATA[一、 问题：

今天调试代码遇到问题，使用spring管理action，其中注入了部分原始类型的属性。配置示例如下：
   
        
        
    
每次请求过来跳转时，发现targetDomainUrl、loginUrl的值为null.


二、出现问题原因

通过在setter方法上打断点，发现在启动的时候，是有值的；每次新的action请求过来后]]></description><category></category></item><item><title><![CDATA[HashMap解决hash冲突的方法]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47188837</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47188837</guid><author>subuser</author><pubDate>Sat, 01 Aug 2015 18:22:01 +0800</pubDate><description><![CDATA[原文地址： http://xiaolu123456.iteye.com/blog/1485349
写的不错，记录下。

在Java编程语言中，最基本的结构就是两种，一种是数组，一种是模拟指针(引用),所有的数据结构都可以用这两个基本结构构造，HashMap也一样。当程序试图将多个 key-value 放入 HashMap 中时，以如下代码片段为例：

HashMap m=new Hash]]></description><category></category></item><item><title><![CDATA[js上传文件]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47188623</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47188623</guid><author>subuser</author><pubDate>Sat, 01 Aug 2015 18:02:49 +0800</pubDate><description><![CDATA[一、原始的XMLHttpRequestjs上传文件过程(参考地址:http://blog.sina.com.cn/s/blog_5d64f7e3010127ns.html)
用到两个对象
第一个对象：FormData
第二个对象：XMLHttpRequest
目前新版的Firefox 与 Chrome 等支持HTML5的浏览器完美的支持这两个对象，但IE9尚未支持 FormData 对象，]]></description><category></category></item><item><title><![CDATA[Struts2 日志原理及配置方法(结合Log4j)]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47126943</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47126943</guid><author>subuser</author><pubDate>Wed, 29 Jul 2015 14:03:19 +0800</pubDate><description><![CDATA[原文地址：http://adrain-work-163-com.iteye.com/blog/1545091
Struts2  日志原理及配置方法
Struts2没有直接使用Log4j或JCL(Apache Java Commons Logger)，也没有使用slf4j它先编写了自己的LoggerFactory（com.opensymphony.xwork2.util.logging.Logg]]></description><category></category></item><item><title><![CDATA[log4j日志输出性能优化-缓存、异步]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/47126887</link><guid>https://blog.youkuaiyun.com/subuser/article/details/47126887</guid><author>subuser</author><pubDate>Wed, 29 Jul 2015 13:58:38 +0800</pubDate><description><![CDATA[原文章地址：http://blog.youkuaiyun.com/tornadowp/article/details/8182496
1、log4j已成为大型系统必不可少的一部分，log4j可以很方便的帮助我们在程序的任何位置输出所要打印的信息，便于我们对系统在调试阶段和正式运行阶段对问题分析和定位。由于日志级别的不同，对系统的性能影响也是有很大的差距，日志级别越高，性能越高。 

2、log4j主要分]]></description><category></category></item><item><title><![CDATA[ajax请求不等服务器返回直接进入error]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/46973463</link><guid>https://blog.youkuaiyun.com/subuser/article/details/46973463</guid><author>subuser</author><pubDate>Mon, 20 Jul 2015 20:43:46 +0800</pubDate><description><![CDATA[function publishTopic(){
	var subjectId = $("#subjectId").attr("value");
	var topicContent = $("#topicContent").val();
	if (topicContent==null || typeof(topicContent)=="undefined" || topicContent=="")]]></description><category></category></item><item><title><![CDATA[json时间转化问题]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/46971941</link><guid>https://blog.youkuaiyun.com/subuser/article/details/46971941</guid><author>subuser</author><pubDate>Mon, 20 Jul 2015 18:25:49 +0800</pubDate><description><![CDATA[使用的序列化工具类为jackson，
import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.lang.StringUtils;
import org.apache.co]]></description><category></category></item><item><title><![CDATA[jquery ajax参数加点号状态200进error]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/46833767</link><guid>https://blog.youkuaiyun.com/subuser/article/details/46833767</guid><author>subuser</author><pubDate>Fri, 10 Jul 2015 18:22:16 +0800</pubDate><description><![CDATA[今天开发中遇到一个很恶心的问题：
用jquery中的ajax提交，发现如果参数中有点号的参数，后台正常返回200状态码的情况下也会走到error:function。
1. 参数data: "topicAbstractInfoVO.belongSubjectId="+subjectId
2. 参数data:“belongSubjectId="+subjectId,
请求正常返回，状态为200]]></description><category></category></item><item><title><![CDATA[welcome-file 不能配置action的解决方法]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/46814953</link><guid>https://blog.youkuaiyun.com/subuser/article/details/46814953</guid><author>subuser</author><pubDate>Thu, 09 Jul 2015 11:59:23 +0800</pubDate><description><![CDATA[今天要把首页换成velociy的，发现直接修改welcome-file为一个action请求不生效。
经过查询资料发现有如下三种解决办法：
1.  
/index.action

然后在webapp目录下新建一个空文件index.action
2. 
/index.jsp

在jsp中做重定向跳转
3.
/index.html

在html中使用META重定向操作：<ME]]></description><category></category></item><item><title><![CDATA[整合spring、redis]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/46441061</link><guid>https://blog.youkuaiyun.com/subuser/article/details/46441061</guid><author>subuser</author><pubDate>Wed, 10 Jun 2015 13:57:14 +0800</pubDate><description><![CDATA[一、依赖的两个jar包

   org.springframework.data
  spring-data-redis
  1.5.0.RELEASE
   

 com.jd.adword.pipe
 jedis
 2.8.0
   



二、 配置文件：


xmlns:xsi="http://www.w3.org/2001/XMLSchema-insta]]></description><category></category></item><item><title><![CDATA[mongo java中and、or多条件查询]]></title><link>https://blog.youkuaiyun.com/subuser/article/details/46415739</link><guid>https://blog.youkuaiyun.com/subuser/article/details/46415739</guid><author>subuser</author><pubDate>Mon, 08 Jun 2015 17:43:46 +0800</pubDate><description><![CDATA[//and、or多条件联合查询
        //age条件(and条件)
        BasicDBList condList = new BasicDBList(); 
        BasicDBObject cond = new BasicDBObject();
        cond.put("$gt",0);
        cond.put("$lte",40);]]></description><category></category></item></channel></rss>