- 浏览: 206212 次
- 性别:
- 来自: 上海
最新评论
-
zhangyanqiu:
能具体的说明一下,例如几个例子么???
实现数据库兼容并不象你想象的那么难 -
lzy.je:
DCL成熟的
对于单例模式的一点想法 -
okhaoba:
我觉得懒汉模式,即第一种足矣。
对于单例模式的一点想法 -
insiku:
想不到javaeye上 不看清楚就乱回帖的人也这么多
对于单例模式的一点想法 -
icewubin:
还在讨论synchronized?第二页buaawhl 说的那 ...
对于单例模式的一点想法
文章列表
单例模式很普遍,对于Spring的实现机制不清楚,单就Java语言上的实现机制来讨论。
虽然简单,但要获得一个高性能且线程安全的单例确不简单。
最简单的、成熟的单例实现有如下两种:
1.
public static final Singleton INSTANCE=new Singleto ...
以前也研究过Eclipse里Web Project引用Java Project的问题,没有解决,特地再深入研究了一下。
思路及实践如下:
1.Elcipse里Project Properties里有Project Reference的设置,说明有这个特性,Java Builder Path里也有引用的Projects设置。
试验:建立两个Java Project A、B,B引用A,设置B的Java Builder Path/Projects引用Project A,则B中的Class可以调用A中的Class,编译和运行都通过。
说明Eclipse对Java Project的解决方案良好。
(Pro ...
我对PreparedStatement和Statement的性能测试了一下:
测试代码如下:
java 代码
Connection con = getOraConnection();
String sql = "select id,name from test where id=";
String tempSql;
int count = 1000;
long time = System.currentTimeMillis();
for (int i = 0; i < count; i++) ...
- 2007-01-22 22:28
- 浏览 11821
- 评论(2)
程序员很容易就会产生重写的冲动,因为推倒重来比维护一个现有系统要容易,至少是开始的时候。 但我会很谨慎。以前我们的头向总经理提出重写我们在做的那个CRM软件时,boss说的是,我并不反对你们重写,问题是你怎么能保证重写一定会更好,或者更值得? 而且,现有代码经过了多少人次的测试?如果重写这些东西就全丢了。 我会更喜欢重构,而且是阶段性的、甚至随时的,当然要保持重构的几个原则。 所以,我的代码很难会在一个时候实在难以忍受了,象一个生命体,始终有新陈代谢,当然就难以“腐化”了。 慎之。
- 2007-01-19 17:39
- 浏览 4938
- 评论(2)
好的代码的标准也是比较感性的。
但是可以借鉴和学习的。
任何时候写一段代码都可以自省一下,是否表达得足够明确简单? 写代码和以前写作文的感觉是相通的,基本上都是追求用固定的语言语法等元素来表达一定的逻辑意义。 所以简洁易懂等基本目标也应该是类似的。
我的意思是说,可以回想作文时的感觉来写代码,白居易找老妇来读他的诗来保证易读性,我们是不是可以借他山之石以攻玉?
- 2006-12-24 12:52
- 浏览 4309
- 评论(0)
我觉得有些奇怪的现象,就是认为外向的人沟通能力一定强,内向的就一定不强。我的感觉并不是这样的,有的时候需要仔细的倾听,表达的时候只需要讲明重点,关键是能听得进别人的意见,而不是表面上敷衍,这些跟是否外向关系不大。长期的沟通是这样的,如果人家觉得你是在为他考虑,信任你,跟你的沟通是有效率和有价值的,这样人家愿意跟你说心里话。
这是我的观点,就是说沟通能力不仅要看短期能力,比如1分钟内能跟你搭上话,也要看长期的能力,就是是否愿意长期跟你深入的交流。
- 2006-12-24 12:42
- 浏览 4777
- 评论(1)
我觉得有一个简单的办法,负载均衡器上采取一个技术:客户端重定向,基于适当的算法(轮换或考虑负载量分配),将对于www.xxx.com单域名的请求客户端重定向到www1.xxx.com--wwwN.xxx.com,然后以后的访问都不变化,这样比较简单。就是说只在第一次访问的时候固定一个子域名。 这种技术我看到IBM的网站似乎是这样用的,会客户端重定向;另外,对于长连接的internet应用,典型的是各类网游,比如ourgame的,就会使用用户选择服务器的方式来达到负载均衡的目的,实际就是有多台服务器,让你自己选择物理位置近的,或者可以自动侦测,也不失为一个可行的办法。
- 2006-12-14 21:32
- 浏览 5087
- 评论(0)
我一直使用DBCP连接池,效果还不错。
最近因为朋友的一个J2EE应用一上连接池,很快就会报connection pool exhausted的错误,所以
特地研究了一下如何自动检测未关闭的数据库连接的技术。
研究了tomcat文档中DataSource一章,发现有专门的Preventing dB connection pool leaks一节,
设置数据源的removeAbandoned="true",removeAbandonedTimeout="60",logAbandoned="true"几个属性就可以了。
DBCP会自动把超 ...
权限概念中,我认为原子元素只有三种:用户、功能权限、数据权限。其他的角色、用户组之类的东西都是为了解耦用户与其他元素之间关系而引入的,或者为了方便起见,都是一个中间变量而已。
1.功能权限。
针对某个一功能,是否能访问。比如此用户是否能访问读取客户资料的功能。这个权限比较基础,不是yes就是no,所以有人又称Y/N权限。
2.数据权限。
在允许访问某一功能权限的基础上,控制可访问的数据范围。比如用户能访问读取客户资料的功能,但他只能访问本人录入的,或分配给本部门的客户资料。
我自己开发了一个权限管理系统,对于功能权限,是可配置的,这一点跟JAAS在web.xml配置是类似的;对于数据权限,我 ...
- 2006-10-26 10:10
- 浏览 7125
- 评论(2)
Oracle里可以使用多种语言来编写存储过程,比如Pro*C/C++,PL/SQL,COBOL,在Oracle8i开始支持用Java编写存储过程。
如果非要写存储过程的话,做为以Java谋生的我,首选用Java编写,用PL/SQL需要记忆很多的语法(Pascal类的语法)和函数,远不如使用Java/JDBC这么轻车熟路。而且,DB2等数据库都支持Java存储过程,所以不比为每一种数据学习一种编写存储过程的方法了。
Java存储过程与一般的JDBC程序有所不同的是:
1.有安全限制,毕竟是在oracle内部运行的,不允许访问操作系统的资源,如文件。
2.获取数据库联接方式,connection ...
以前着迷的时候,学习、工作几乎就是我生活的全部。
现在我发现打打羽毛球、研究一下如何做饭也很有意思啊。而且我发现里面很多方法很熟悉,就跟我在写程序时用到的一样。简单如菜里放多少盐,你得尝---这就是测试---而且最好放完溶解完全后就立即尝,这样你放盐的正确性能得到立即的反馈,用以巩固经验,同时给后续的操作提供保证---这就是单元测试了吧,尽早测试,不要让错误累计,呵呵
上回搬家,整理一大堆东西,发现整理起来也有相当的困难。书籍如何分堆,比较容易找呢?杂物放哪里不碍眼又容易找呢?---归类,又要权衡使用的方便性、美观、环境是否适宜保存等等,比起程序的分包、封装、甚至整体的设计,难道会容易很多么 ...
楼主总结得还不错。不过看上去似乎经验不足。(我说错了请原谅我)
我补充几点:
1.跨应用服务器。这个痛苦我比较有体会。(注意:但tomcat5到4之间的的跨越可能意义不大,因为支持的servlet ,jsp spec版本不同;倒过来是应该完全兼容的。)
1.1 EJB跨应用服务器。虽然有spec,但每家都有自己的扩展,有些特别要命特性比如,EJB spec2.0里居然对like 只支持常数,就是不能传入?。
然后EJB的配置文件都有各自的扩展,真是痛苦。好在Jbuilder可以自动转换Weblogic到Jboss,但也不是那么好,总有魔鬼的细节要你反复调试。
1.2无EJB的跨 ...
- 2006-10-20 14:41
- 浏览 4240
- 评论(0)
转贴:
"说一说编程恶习"
http://www.blogjava.net/uiiang/archive/2006/10/16/75502.html
这哥们郁闷阿,维护这么一堆代码...
我对B/S是趋势和主流这个问题有过多年的疑问及困惑。
虽然我一直在做B/S的开发,我并不认为B/S相比C/S有什么特别大,不可超越的优势。C/S并不是死的,是可以变化和进步的。
本文中所提到的C/S,不仅是传统的两层结构, ...
zww80216 写道复杂商品的分类,类似淘宝的分类
1.每类商品有无限级分类
2.每个商品可能会有交叉分类
3.每类商品的扩展属性不一样
比如:
夹克的扩展属性为
款式: 拉链夹克 风格: 休闲 品牌: other/其它 适合季节: 春秋 尺码 ...
- 2006-10-12 12:38
- 浏览 4457
- 评论(0)