如果变化很大不适于使用pool或者cache
如果变换很少,则应当尽量早的进行cache
实现起来其实不是很麻烦。
使用Apache common Pool,JF和Spring都是使用这个POOL的。
如果自己直接POOL,对代码干扰很大,因为POOL首先要借出,然后还要还掉,就象数据库连接一样,万一中间代码过长,没有归还,又内存泄漏了。为避免这个问题,目前优雅方式使用AOP或者动态代理,但是这样学习的东西更多,相当于自己做一个小框架,动态代理+POOL文章:
http://www.jdon.com/jive/thread.jsp?forum=91&thread=18095
这就是为什么推荐使用象JF/Spring框架的原因,EJB 无态Session Bean缺省也是靠EJB容器的POOL支持的。
可能有人觉得框架包含东西太多,所以JF坚持简单原则,动态代理+POOL是JF一个主要方面。
我是这么想的 如果从ResultSet直接变的话,因为我的xml是用Dom 初步想法是如果直接变的话占用连接时间太长,所以先写入list然后马上把JDBC有关的东西全部释放
这也是为什么说使用Jdon框架或使用EJB等将会保证性能的原因了(EJB是分布式Cache)。
[该贴被banq于2007年03月30日 08:31修改过]
哪些东西应该放在cache,哪些应该放在pool中.这里cache指的是自己实现的一个数据结构集吗?cache是如何实现的?是用数据结构吗?能下你的实现过程中吗