<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ddf168913的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ddf168913</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ddf168913]]></copyright><item><title><![CDATA[Servlet3.0新特性---异步支持]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/84164778</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/84164778</guid><author>ddf168913</author><pubDate>Wed, 07 Mar 2012 22:07:02 +0800</pubDate><description><![CDATA[1.servlet2.5中，页面发送一次请求，是顺序执行，即使在servlet里的service中开启一个线程，线程处理后的结果是无法返回给页面的，servlet执行完毕后，response就关闭了，无法将后台更新数据即时更新到页面端2.现在后台“推”是怎么实现的   2.1定时发送请求，页面有刷新，不好友      2.2Ajax 轮询，然后通过js更新页面数据    相比前者虽然友好，访问量太...]]></description><category></category></item><item><title><![CDATA[Servlet3.0新特性---注解]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/84164757</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/84164757</guid><author>ddf168913</author><pubDate>Wed, 07 Mar 2012 21:23:25 +0800</pubDate><description><![CDATA[
1.servlet3.0作为J2EE 6规范一部分，随j2EE6一起发布，并且tomcat7已经完全支持。

2.tomcat7(tomcat7 需要jdk1.6支持)已经完全支持servlet3.0,

3.web项目中添加对servlet3.0支持，
  将E:\apache-tomcat-7.0.26\lib下的jar包加入到web项目
  classpath中,可以不不加到...]]></description><category></category></item><item><title><![CDATA[ClaasLoader及连接过程]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83983430</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83983430</guid><author>ddf168913</author><pubDate>Tue, 09 Aug 2011 17:50:38 +0800</pubDate><description><![CDATA[

1.	类的加载的最终产品是位于堆区的Class对象
 
2.	Class对象封装了类在方法区内的数据机构，并且向Java程序员提供了访问方法区内的数据结构的接口
 
3.	有两种类型的加载器
	---Java虚拟机自带的加载器
  		.根类加载器(Bootstrap),由C++实现，程序员无法查看
  		.扩展类加载器(Extension),java实现
 	 	.系统类...]]></description><category></category></item><item><title><![CDATA[JVM及ClassLoader]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83983380</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83983380</guid><author>ddf168913</author><pubDate>Tue, 09 Aug 2011 17:12:37 +0800</pubDate><description><![CDATA[ 
1.	Java虚拟机与程序的生命周期
	运行一个java程序，相等于开了一个jvm进程
 
2.	Java虚拟机结束生命周期 
	-----执行了System.exit()方法
	----程序正常执行结束
	-----程序执行过程遇到了异常或错误而异常终止
	-----由于操作系统出现错误而导致Java虚拟机进程终止
3.	 类的加载、连接与初始化
	加载：查找并加载类的二...]]></description><category></category></item><item><title><![CDATA[3类执行机制]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955176</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955176</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 16:54:31 +0800</pubDate><description><![CDATA[1.源码编译阶段将源码编译为JVM字节码，JVM字节码是一种中间代码的方式，由JVM在运行期对其进行解释并执行。
 
2.字节码解释执行，JVM有一套自己的指令，对于面向对象的语言而言，最重要的执行指令，JVM采用了invokestatic、invokevirtual、invokeinterface和invokeespecial四个指令来执行不同方法调用
invokestatic对应调用st...]]></description><category></category></item><item><title><![CDATA[1.JVM]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955165</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955165</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 16:19:43 +0800</pubDate><description><![CDATA[1.JVM负责装载Class文件并执行；将源码编译为class文件取决于各个jvm实现或各种源码编译器；class文件通常由类加载器来完成加载；class执行在sun jdk中有解释执行和编译为机器码执行两种方式，编译为机器码又分为client和server两种模式
 
 ...]]></description><category></category></item><item><title><![CDATA[06优先考虑静态成员类]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955156</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955156</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 15:45:05 +0800</pubDate><description><![CDATA[1.嵌套类有四种:静态成员类、非静态成员类、匿名类和内部类
 
2.静态成员类可以访问外围类的所有成员，包括那些声明为私有的成员。静态成员类是外围类的一个静态成员，与其他静态成员一样，遵守同样的可访问性规则
 
3.非静态成员类的每个实例都隐含着与外围类的一个外围实例相关联。在没有外围实例的情况下，要想创建非静态成员类的实例是不可能的。
 
4.当非静态成员类的实例被创建的时候，它和外...]]></description><category></category></item><item><title><![CDATA[2.类加载机制]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955131</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955131</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 14:23:08 +0800</pubDate><description><![CDATA[1.类加载机制是指.class文件加载到jvm,并形成class对象机制，之后应用就可以对class对象进行实例化并调用，类加载机制可以在运行时动态加载外部类、远处网络下载过来class文件；除了动态化外，还可以通过jvm类的加载机制来达到隔离的效果，如Application Server来避免两个应用的类互相干扰。
 
2.jvm将类的加载分为三个步骤：装载、链接和初始化。装...]]></description><category></category></item><item><title><![CDATA[05_基本类型优先于装箱基本类型]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955103</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955103</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 11:03:33 +0800</pubDate><description><![CDATA[1.基本类型和装箱基本类型之间区别：
   a)基本类型只有值，而装箱基本类型则具有与它们的值不同的同一性。两个装箱基本类型可以具有具有相同的值和不同的同       一性
   b)装箱基本类型有null
   c)基本类型比装箱基本类型更节省时间和空间
 
所以，基本类型要优先于装箱基本类型，基本类型更加简单也更加快速。...]]></description><category></category></item><item><title><![CDATA[04_字符串连接]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955102</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955102</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 10:33:39 +0800</pubDate><description><![CDATA[1.字符串连接操作符&quot;+&quot;,不适合用在大规模字符串连接场合，由于字符串不可变，2个字符串连接在一起时，它们内容都要被拷贝。
 
测试代码：


public class _51StringConcatenation {
	private static final int NUM_ITEMS = 5000;
	private static final String LINE_FOR_IT...]]></description><category></category></item><item><title><![CDATA[03 字符串--基础]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83955096</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83955096</guid><author>ddf168913</author><pubDate>Sun, 03 Jul 2011 10:24:17 +0800</pubDate><description><![CDATA[ 
1.String s = new String(&quot;abc&quot;);//此时内存有两个对象:StringPool里&quot;abc&quot;,堆空间:new String(&quot;abc&quot;)
   String s1 = &quot;abc&quot;;//因StringPool里已经有“abc”对象,所以不会再产生,此时内存有两个对象
   String s2 = new String(&quot;abc&quot;);//堆空间会新增一个对象，此时内...]]></description><category></category></item><item><title><![CDATA[01_Rest概念]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83951603</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83951603</guid><author>ddf168913</author><pubDate>Sun, 26 Jun 2011 13:54:01 +0800</pubDate><description><![CDATA[REST 并非标准，而是一种开发 Web 应用的架构风格，可以将其理解为一种设计模式。REST 基于 HTTP，URI，以及 XML 这些现有的广泛流行的协议和标准，伴随着 REST，HTTP 协议得到了更加正确的使用。...]]></description><category></category></item><item><title><![CDATA[Eclipse搭建环境]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83938466</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83938466</guid><author>ddf168913</author><pubDate>Mon, 30 May 2011 21:21:17 +0800</pubDate><description><![CDATA[
虽然c有很多经典的开发环境，但是大多数是linux或unix下的，对于windows的忠实用户来讲，可能并不习惯。
windows环境中，有一个dev-c++可以做c代码的调试，但这个软件貌似已经停止更新了，而且个人觉得它也不够时尚，有点过时了。所以windows平台中，我更倾向于推荐eclipse环境
1、下载Eclipse IDE for C/C++ Developers
地址：ht...]]></description><category></category></item><item><title><![CDATA[02_List Set Map contains方法调用]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83807234</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83807234</guid><author>ddf168913</author><pubDate>Wed, 05 Jan 2011 19:23:52 +0800</pubDate><description><![CDATA[对于集合List Set Map当调用其方法contains，是不是包含某元素时，会自动调用对象的equals方法，对于ArrayList只需要覆盖对象的equals即可，但对于Set Map,还需要覆盖对象的hashCode,不然得不到预期的结果
 
测试代码：


public class Name {

	private String firstName;
	private S...]]></description><category></category></item><item><title><![CDATA[03使用jdk提供类实现观察者模式(三)]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83770849</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83770849</guid><author>ddf168913</author><pubDate>Sun, 28 Nov 2010 19:58:25 +0800</pubDate><description><![CDATA[1.jdk默认对观察者模式提供了支持
   被观察着继承Observable
    观察者实现Observer接口
 
    被观察者通过调用notifyObservers（）方法通知观察者
 
2.代码实现
   /**
 * 被观察者
 * @author Administrator
 *
 */
public class Watched extends Obser...]]></description><category></category></item><item><title><![CDATA[02观察者模式--模拟Awt(二)]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83770792</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83770792</guid><author>ddf168913</author><pubDate>Sun, 28 Nov 2010 17:00:20 +0800</pubDate><description><![CDATA[1.public class AWTSimulation {

	public static void main(String[] args) {
		Buttton b = new Buttton();
		
		
		b.addActionListener(new MyActionListener());
		b.addActionListener(new MyActionLis...]]></description><category></category></item><item><title><![CDATA[01观察者模式(一)]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83770788</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83770788</guid><author>ddf168913</author><pubDate>Sun, 28 Nov 2010 16:46:14 +0800</pubDate><description><![CDATA[1.观察者定义了一种一对多依赖关系，让多个观察者同时监听某个主题对象。这个主题对象在状态上发生变化时，会通知所有的观者对象，让他们自动更新自己。----这里的主题对象就是被观察者
 
2.代码模拟
 
   抽象主题角色AbstractWatched.java
   public interface AbstractWatched {
	public void addWatcher(A...]]></description><category></category></item><item><title><![CDATA[02_Junit误区------setup and teardown]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83761685</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83761685</guid><author>ddf168913</author><pubDate>Tue, 09 Nov 2010 22:50:35 +0800</pubDate><description><![CDATA[1.之前一直认为setUp tearDown在测试类中只执行一次，今天测试了下，才知道，
   每个测试方法前执行一次setUp,执行方法后执行tearDown
  看测试代码：
 import static junit.framework.Assert.*;
import junit.framework.TestCase;

public class CalculatorTest e...]]></description><category></category></item><item><title><![CDATA[08_TCPMon拦截soap请求]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83739896</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83739896</guid><author>ddf168913</author><pubDate>Sat, 30 Oct 2010 21:31:17 +0800</pubDate><description><![CDATA[1.TCPMon简介及原理
   TCPMon是Aapche一个项目，用于查看SOAP消息和重发送
 
   实现原理：

localPort:通过机器的那个端口访问TCPMon
ServerIP:目标服务器IP
ServerPort:目标服务器端口
 
webService客户端访问时，我们把端口指定TCPMon的端口既可以。
 
2.拦截后截图

 
 
 ...]]></description><category></category></item><item><title><![CDATA[01_Thread中处理未捕获得异常]]></title><link>https://blog.youkuaiyun.com/ddf168913/article/details/83736420</link><guid>https://blog.youkuaiyun.com/ddf168913/article/details/83736420</guid><author>ddf168913</author><pubDate>Sun, 24 Oct 2010 15:54:56 +0800</pubDate><description><![CDATA[1.Thread程序终止有两种方式a.)run方法执行结束 b).run中抛出异常,该异常会被Thread的ThreadGroup层顺流向上传    送，到达ThreadGroup root,尤其进行处理
 
2.通过UncaughtExceptionHandler来完成ThreadGroup异常处理的工作
  public class BubbleSortThread extends Th...]]></description><category></category></item></channel></rss>