- 浏览: 142237 次
- 性别:
- 来自: 上海
最新评论
-
gaobo8993:
看了不是很懂,学习一下吧
struts多模块的一些问题 -
zhaofangtao:
对了,还有个问题
我们3A4C发送数据量稍大的订单时候,比如 ...
webMethods之Developer (2) -
zhaofangtao:
hi
谢谢你的知识分享
我半道出家还是半桶水,想请教您webm ...
webMethods之Developer (2) -
dr2tr:
刚看到eye上面另一位老兄的文章,http://lucasle ...
Singleton和Double Check
文章列表
原本在CSDN有一个博的,很早以前就开始记录了。只是CSDN蜕化得实在厉害,不得不离开;而没有想到javaeye 居然有直接地导入,实在是有些汗。。(虽然颇有些挖墙脚的意思,不过看到有这个功能,偶还是相当happy的) 以前写技术博,基本都不会写任何带主观色彩的东西。然而终究程序人生也是一种人生,外面可以有千千万万人诋毁程序员,但是自己却没有任何理由这么做。特别是看到,某些甚至于自甘轻贱的同行们,根本还称不上一个developer.
总的来说,前面几年的学习都是围绕基础在进行的,无论是语言/数据库或者是设计模式。我想以后,应该多注意些跟项目设计/开发流程或者企业级应用相关的东西。be as a ...
- 2008-08-27 21:14
- 浏览 763
- 评论(0)
final 这个关键字从学Java开始就有提及。它可以用来修饰class, method, method parameter, variable等。这里主要说说最后这一种。
对于有final 修饰的variable, 无论是instance variable 还是local variable, 其含义是说(一般)一经初始化和赋值,其值就无法改变。这里,对于instance variable, 我们说,这“初始化和赋值”可能是在声明时就完成的,也可以是在构造函数中完成的。
然而,这个一般无法改变的值却是可以改变的。在JSR 133 中提到了用反射改变final 的instance field 的方 ...
- 2007-08-17 11:12
- 浏览 1044
- 评论(0)
首先看一段比较经典的代码:
public static Singleton getInstance(){ if (instance == null) //0 { synchronized(Singleton.class) { if (instance == null) instance = new Singleton(); } } return instance;}
在这段代码里,对instance == null 的两次检查就是我们所说的Double Check. 而对于为什么要做两次,网上的资料不胜枚举,这里就不多说 ...
- 2007-08-03 17:00
- 浏览 1775
- 评论(1)
有关于Servlet 的线程安全,首先需要知道的是,在一般情况下,每个Servlet 在容器里都只有一个实例(instance), 而每当有用户访问该Servlet 时,容器都会产生一个线程。
这是比较基本的概念了。一般我们还知道,Java 有一个Marker Interface 叫做SingleThreadModel, 这个接口一旦被继承,就意味着容器一般对一个instance 只维护一个线程。当时设计这个接口的用意自然是为了线程安全的问题。而现在,这个接口已经被废弃了。(然而,偶尔有些用老版本的系统会涉及到)。看一下API 文档中对此的说明:
Ensures that servlets ha ...
- 2007-07-16 20:38
- 浏览 1348
- 评论(0)
--import data to DB from file (Sybase)$SYBASE/bin/bcp tempdb..tmpTbl in $DIR/data.txt -b 1000 -c -S GFISVCS_NY_PROD -U munisa -P$PASSWD -I $INTERFACE
--export data to file from DB (Sybase)$SYBASE/bin/bcp tempdb..tmpTbl out $RPT_DIR/data.txt -b 1000 -c -t'|' -S$PROD_SERVER -U$USER -P$PASSWD -I$INTERF ...
- 2007-06-28 20:27
- 浏览 823
- 评论(0)
首先说一下题目的意思。比如在Spring配置文件中,有:
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean" destroy-method="destroy"> <property name="dataSource"> <ref bean="dataSource" /& ...
- 2007-06-28 20:23
- 浏览 1671
- 评论(0)
Visitor 模式是这个系列文章(也是笔者在读的这本书)的最后一个模式。按惯例,首先给出定义:Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which it operates.
总结一下,这里有两点:1。添加operation 2。不改变原有的classes
事实上,到后面我们会发现要实现上面的两点有一个前提 ...
- 2007-03-13 17:10
- 浏览 1100
- 评论(0)
就Java 开发者而言,Iterator 应该是比较容易理解的模式了。 因为用过Java 集合的人会记得有iterator() 这个函数。应用iterator() 返回Iterator 对象,然后对相应的集合元素进行操作,这就是经典的Iterator 的用法。(当然,Iteartor 还涉及另外一个模式,Factory, 这在之前已经讲过)。
在基本的Iterator 模式的定义里是这样讲的:“Provide a way to access the elements of an aggregate object sequentially without exposing its underlyi ...
- 2007-03-12 13:59
- 浏览 1167
- 评论(0)
Decorator 模式, 其功能为;Attach additional responsibilities to an object dynamically. Decorators provide a flexible alternative to subclassing for extending functionality.
类图表示为:
解释一下这张图,这个模式主要有两点:
1。所需功能(Operation) 的部分实现是通过继承一个接口(或父类,通常也是Decoratee的父类)得到的
2。Decorator 通常聚合有它与Dectratee的(公共)父类
比较简单的关于这个的例子 ...
- 2007-03-09 14:36
- 浏览 1161
- 评论(0)
Liskov Substitution Principle, 由Barbara Liskov 和 Jeannette Wing在93年提出,其原文为:“Let q(x) be a property provable about objects x of type T. Then q(y) should be true for objects y of type S where S is a subtype of T. ” 。通俗一点来说,LSP的意思是指,“An instance of a class should function as an instance of its superclas ...
- 2007-03-08 11:15
- 浏览 1411
- 评论(0)
CheckStyle,正如名字所表示的,是用来检查Java Style的。它的开发站点(http://checkstyle.sourceforge.net/index.html)上的说明是“Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. ” 由于其开源,这个工具在公司开发项目时的code review方面有很好的应用(当然,WSAD/RAD本身也有比较强大的code review 功能,但是笔者不知道能不能够自定义)。本文主要是想讲一下在 ...
- 2007-03-05 11:17
- 浏览 2306
- 评论(0)
我们知道,equals()函数是用来做比较的。java中的比较有两种:一种是内存地址的比较,一种是内容的比较。而比较个体也有两种:一种是简单类型(这类简单说来无所谓内存地址的比较或者内容比较的区别);还有一种是对象 ...
- 2007-02-28 13:19
- 浏览 863
- 评论(0)
这篇文章是笔者在再次读了夏昕的《Spring Guide》后的一些总结。由于本人最熟悉的是Struts,而对Spring、Hibernate还没有很多的实践经验,所以虽然这篇文章讲的是三者的集成,但主要还是以Struts为中心。
首先看一下Struts与Spring的集成。
首先看一下在struts-config.xml中需要做的改动,最开始是加入插件声明:
<struts-config> <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"> &l ...
- 2006-10-08 21:45
- 浏览 756
- 评论(0)
首先是寻找使用Hibernate3.0的Eclipse插件。官方站上提供了Hibernate Tools,这个东西看Manual是很不错的,但是实际用起来,却总是没能成功(也许是版本问题,我用Eclipse3.1.2,还有一个Lomboz,试了这个tool的3.1Beta和3.2beta,要么就是根本没有相关文件生成,要么就是缺文件,原因不明)。经过一天多的尝试,决定暂时先放弃这个工具。
后来用的是一个叫Hibernate Synchronizer的工具,这个终于摸出点头绪。(需要注意的是,网上很多文章给出的它的安装地址是不对的,现在可以到sourceforge上查到)。
接着是看了一些基本 ...
- 2006-09-08 16:53
- 浏览 807
- 评论(0)
笔者对Trading Networks的认识还只是概念而已,由于读了相应的文档,所以把一些笔记整理在这里
普遍意义上的Trading Network是指“a set of organizations that have agreed to exchange business documents”
webMethods Trading Networks是运行在IS上的一个组件,其功能是与其他组织(公司、市场等)的系统联系“to form a business-to-business trading network.”<v:shapetype o:spt="75" coo ...
- 2006-08-30 10:05
- 浏览 1195
- 评论(0)