自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

转载 Java中的内部类和匿名类

  提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的区别与联系,在下文中会有对比。内部类从表面上看,就是在类中又定义了一个类(下文会看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的深入了解,你会发

2008-11-10 15:25:00 773

转载 J2EE Design Pattern 简图

以上是J2EE Design Pattern 简图, 不过缺少 Fast lane Reader Fast lane Reader  模式主要解决的问题是 对于只读的内容,比如获取全国省市等,提高访问内容。通过DAO(Data Access object)而不是Entiry Bean,如下面代码,如果useFastLane is true,使用DAO。不过到EJB3.0 该模式“过时”

2008-11-10 15:24:00 711

转载 通过ClassLoader说明容器热部署实现机制

   在J2EE的项目中,容器给我们提供的热部署功能使得我们不用重启动容器而修改我们的代码。比如使用Weblogic,我们可以在Weblogic-application.xml中配置是否支持热部署Servlet。查阅Weblogc文档,其实在Weblogic中,EJB组件也是可以热部署的,但如何要热部署EJB组件,Weblogc要求必须自定义ClassLoder。    JVM规范

2008-11-10 15:22:00 839

转载 深入浅出多线程(6)分析并行包线程池的设计与实现

在上篇中介绍了线程池的设计需求以及使用,在这里我们分析Concurrent包中线程池的实现类ThreadPoolExecutor的设计,是不是感觉没意义,人家都实现了还分析啥?当然是提高我们自身的设计能力了。对于设计能力的提高,我认为一方面我们要在具体实践中,能够学习前人总结的设计思想(比如设计模式之类的),根据具体上下文,能够融会贯通的使用他们。另一方面分析优秀的框架设计与实现也是很好的

2008-11-10 14:58:00 944

转载 深入浅出多线程(5)以并行包线程池为例说说线程池的设计需求及使用

    线程对象的创建和销毁是需要花费系统资源的,通过线程池,可以避免该问题并提高系统的响应时间。这种情形类似我们常提到的数据库连接池。   线程池的广泛应用使得在SUN在JDK1.5的工具包提供了线程池的支持。我计划将该系列分为设计需求与设计实现两个部分。这样会更加清晰。如果想要熟悉,并熟练应用线程池,那么通过设计需求篇也就是该篇就可以找到答案。如果想探究实现的细节,那么在设计实

2008-11-10 14:57:00 1193

转载 深入浅出多线程(4)对CachedThreadPool OutOfMemoryError问题的一些想法

    线程池是Conncurrent包提供给我们的一个重要的礼物。使得我们没有必要维护自个实现的心里很没底的线程池了。但如何充分利用好这些线程池来加快我们开发与测试效率呢?当然是知己知彼。本系列就说说对CachedThreadPool使用的一下问题。    下面是对CachedThreadPool的一个测试,程序有问题吗?Code highlighting produced by

2008-11-10 14:56:00 4775

转载 深入浅出Java多线程(1)-方法 join

   对于Java开发人员,多线程应该是必须熟练应用的知识点,特别是开发基于Java语言的产品。本文将深入浅出的表述Java多线程的知识点,在后续的系列里将侧重于Java5由Doug Lea教授提供的Concurrent并行包的设计思想以及具体实现与应用。   如何才能深入浅出呢,我的理解是带着问题,而不是泛泛的看。所以该系列基本以解决问题为主,当然我也非常希望读者能够提出更好的解决问

2008-11-06 17:37:00 1067

转载 深入浅出Java多线程(2)-Swing中的EDT(事件分发线程)

本文主要解决的问题是:如何使其Swing程序只能运行一个实例?抛开Swing, 我们的程序是通过java命令行启动一个进程来执行的,该问题也就是说要保证这个进程的唯一性,当然如果能够访问系统的接口,得到进程的信息来判断是否已有进程正在运行,不就解决了吗?但是如何访问系统的接口呢?如何要保证在不同的平台上都是OK的呢?我的思路是用文件锁,当然我相信肯定有更好的方法,呵呵,希望读者能够

2008-11-06 17:36:00 1140

转载 深入浅出多线程(3)-Future异步模式以及在JDK1.5Concurrent包中的实现

   在多线程交互的中,经常有一个线程需要得到另个一线程的计算结果,我们常用的是Future异步模式来加以解决。   什么是Future模式呢?Future顾名思义,在金融行业叫期权,市场上有看跌期权和看涨期权,你可以在现在(比如九月份)购买年底(十二月)的石油,假如你买的是看涨期权,那么如果石油真的涨了,你也可以在十二月份依照九月份商定的价格购买。扯远了,Future就是你可以拿到未

2008-11-06 17:35:00 858

转载 浅谈java.util.concurrent包的并发处理

    我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,而当针对高质量Java多线程并发程序设计时,为防止死蹦等现象的出现,比如使用java之前的wait()、notify()和synchronized等,每每需要考虑性能、死锁、公平性、资源管理以及如何避免线程安全性方面带来的危害等诸多因素,往往会采用一些较为复杂的安全策略,加重了程序员的开发

2008-11-06 17:31:00 993

转载 Java开发最容易犯的几种错误

1.Duplicated Code 代码重复几乎是最常见的异味了。他也是Refactoring的主要目标之一。代码重复往往来自于copy-and-paste的编程风格。与他相对应OAOO是一个好系统的重要标志。 2.Long method 它是传统结构化的“遗毒”。一个方法应当具有自我独

2008-11-06 17:15:00 481

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除