憨厚生
----Java's Slave----
***Java's Host***
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
::
165 随笔 :: 17 文章 :: 90 评论 :: 0 Trackbacks
<
2007年5月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
公告
本博客只作为本人学习资料使用,如侵犯你的相关权益,请联系我!我会尽快做出处理! 如商业用途请让本人知道,转摘保留本人姓名,blog地址.
Email:
常用链接
我的随笔
我的文章
我的评论
我的参与
最新评论
留言簿
(6)
给我留言
查看公开留言
查看私人留言
随笔分类
(185)
ajax(8)
(rss)
html(3)
(rss)
J2ME(2)
(rss)
Java(36)
(rss)
JS(49)
(rss)
jsp(5)
(rss)
pl/sql(12)
(rss)
software test(1)
(rss)
spring(1)
(rss)
web系统开发(19)
(rss)
xml(1)
(rss)
互联网(6)
(rss)
博客收藏(1)
(rss)
收藏(7)
(rss)
数据库(6)
(rss)
版本控制(1)
(rss)
用户体验(1)
(rss)
站点收藏
(rss)
管理相关(4)
(rss)
翻译(1)
(rss)
职场故事(4)
(rss)
胡说八道(3)
(rss)
设计相关(13)
(rss)
重构(1)
(rss)
随笔档案
(165)
2010年6月 (1)
2010年3月 (1)
2010年1月 (1)
2009年12月 (19)
2009年11月 (5)
2009年10月 (4)
2009年9月 (1)
2009年8月 (1)
2009年7月 (13)
2009年6月 (5)
2009年5月 (7)
2009年4月 (25)
2009年3月 (33)
2009年2月 (8)
2009年1月 (1)
2008年9月 (3)
2008年8月 (3)
2008年6月 (15)
2008年5月 (2)
2007年8月 (1)
2007年5月 (2)
2007年4月 (4)
2007年1月 (2)
2006年12月 (4)
2006年10月 (4)
文章档案
(17)
2008年5月 (1)
2007年4月 (1)
2007年3月 (1)
2007年2月 (2)
2007年1月 (3)
2006年9月 (5)
2006年8月 (2)
2006年4月 (2)
http://www.blogcn.com/u3/19/23/zhjhlz/inde
A JavaScript Fancier
BlueDavy
eamoi
GaoPengBolg
Java Idioms
JAVA技术研究中心
JAXMAO-TOMCAT 中文版
jianhan
时光的洪流中我们总会长大
laoflch
Laruence
sysdesign
tippingpoint
zhuyongjp
冯大辉
冯大辉,就职于阿里巴巴集团旗下支付宝(中国)网络科技有限公司(Alipay.com),担任数据库架构师,负责支付宝数据库架构规划、解决方案等相关工作。2007 年国内首批 Oracle ACE. 网上 ID 为“Fenng”,业余时间关注 Web 2.0 网站架构技术。个人Blog:http://www.dbanotes.net。
刘文涛(Pattern,UML,Struts2,Hibernate3,Spring2,Oracle,mysql,weblogic,tomcat,compass,lucene,nutch,sitemesh,freemarker,div,css,ExtJs,Flex,seo)
前端设计
李松峰
王泽宾
知道分子
杭州人。沉浸于 Linux 系统管理十余年,以此为业逾五载。目前供职于某著名电子商务网站,任运维架构师。业余偶猎文史哲社政法诸学,好读书,不求甚解。游戏文字,自娱娱人。聊为无益之事,以遣有涯之生也。
西湖边的穷秀才-文初
设计模式
赵小刀的文字吧
软件开发资料汇总
阿蒙专栏
陈科学院
高春辉的 BLOG
搜索
积分与排名
积分 - 112282
排名 - 524
最新评论
1. re: Undefined exploded archive location[未登录]
不错,解决问题了。。
--小张
2. re: Undefined exploded archive location
恩。但有时还是不能解决。可以导入另外一个可以部署的项目到eclipse中,
然后以前的那个项目就可以部署了。再不行的话就将刚才导入的项目部署并运行一次,然后可以了。
--ybs
3. 平特一肖
不错
--平特一肖
4. 平特一肖
评论内容较长,点击标题查看
--平特一肖
5. re: 如何判断浏览器是否禁用Cookie
95169挂号网登不上是不是禁用Cookie
--淡云清风
6. re: AJAX中文问题总结
aaaaaaaaaa bbbbbbbbb
--sda
7. re: AJAX中文问题总结
dasdsadsa
--sda
8. google 搜索页面样式怎么改[未登录]
评论内容较长,点击标题查看
--等待
9. re: sql中exits和in的区别
@无名
很好,讲的很详细。可以再补充下exits和in跟索引的关系。
--佛挡杀佛
10. re: Cookie, iframe 与 P3P 的那点事儿[未登录]
评论内容较长,点击标题查看
--林
11. 呵呵……
找到很多可以浏览目录文件的网站,这都是由于没有设置好网站权限所造成的。
--luckgogo
12. ugg boots
ntext的作用是搜索网页中的指定字符,这貌似在Google Hack中没有什么作用
--baobao
13. re: intitle,inurl,filetype,site的作用以及在google中的用法
呵呵
--links london
14. re: intitle,inurl,filetype,site的作用以及在google中的用法
评论内容较长,点击标题查看
--links london
15. re: intitle,inurl,filetype,site的作用以及在google中的用法
IE8自带的JS调试器用起来很爽的 。。。。
--ed hardy clothes
16. re: intitle,inurl,filetype,site的作用以及在google中的用法
如果想增加其他目录,只需按此格式继续添加。文件编写完成后将其上传到网站的根目录,就可以让网站远离Google Hack了。。。。。
--tiffanys
17. re: sql中exits和in的区别
你写得很容易理解,谢谢
--ren
18. re: Undefined exploded archive location
谢谢
--leehove
19. re: 推荐一个不错的IE下的js调试插件
不必用调试器的,IE8自带的JS调试器用起来很爽的
blog.up123.com
--blog.up123.com
20. re: 如何添加google站内搜索代码到自己网站
评论内容较长,点击标题查看
--二胡
21. 代码修正
评论内容较长,点击标题查看
--hello
22. re: 细节处见功夫---cookie的应用和处理
学习了 !!
--爱.女优
23. re: 细节处见功夫---cookie的应用和处理
@wz.xjtu
如果是做项目的话,用户量小!也许不需要考虑!
如果是做产品的话,最好要考虑全面些!
呵呵,个人意见!
--二胡
24. re: 细节处见功夫---cookie的应用和处理
由这个问题我们也可以看出,一般的应用我们不需要去考虑禁用cookie的情况。
--wz.xjtu
25. re: 细节处见功夫---cookie的应用和处理
呵呵 不过也是有道理的,一般不懂计算机的不会没事去改cookie,不过细节还是注意的。
--咖啡妆
阅读排行榜
1. 转 XMLHttpRequest().readyState的五种状态详解 (10276)
2. Undefined exploded archive location(5605)
3. sql中exits和in的区别(4873)
4. ER图(3850)
5. 推荐一个不错的IE下的js调试插件(3806)
评论排行榜
1. 关于ArrayList类的疑惑!(10)
2. try catch finally一点疑惑(10)
3. intitle,inurl,filetype,site的作用以及在google中的用法 (6)
4. 推荐一个不错的IE下的js调试插件(5)
5. 大话之观察者模式(4)
对象池相关
业余时间写了有关对象池方面的程序,不足之处请大家指出:
1)要放如到对象池中的对象类
package com.test;
import java.util.*;
public class TestObject {
private String ID;
private String name;
private boolean isUsed = false;
private long firstDate = System.currentTimeMillis();
public void handle() {// 业务操作 �����
}
public long getFirstDate() {
return firstDate;
}
public void setFirstDate(long firstDate) {
this.firstDate = firstDate;
}
public boolean isUsed() {
return isUsed;
}
public void setUsed(boolean isUsed) {
this.isUsed = isUsed;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getID() {
return ID;
}
public void setID(String id) {
ID = id;
}
public boolean close() {
this.setFirstDate(System.currentTimeMillis());
this.setUsed(false);
return true;
}
}
2)对象池类
package com.test;
import java.util.*;
;
public class Factory {
private static Factory factory;
private static int minimum = 4;// 对象池中最少有4个对象
//暂时没有写对象池初始化的时候自动生成4个相关对象
private static int maximum = 10;// 对象池中最多有10个对象
private static Collection data = new Vector();
static {
TestObject testObject = new TestObject();
/*
* for (int i = 0; i < minimum; i++) { testObject.setID("0" + new Integer
.toString());
* testObject.setName("01" + new Integer
.toString()); data.add(testObject); }
*/
testObject.setID("01");
testObject.setName("011");
data.add(testObject);
testObject = new TestObject();
testObject.setID("02");
testObject.setName("021");
data.add(testObject);
testObject = new TestObject();
testObject.setID("03");
testObject.setName("031");
data.add(testObject);
testObject = new TestObject();
testObject.setID("04");
testObject.setName("041");
data.add(testObject);
testObject = new TestObject();
testObject.setID("05");
testObject.setName("051");
data.add(testObject);
testObject = new TestObject();
testObject.setID("06");
testObject.setName("061");
data.add(testObject);
testObject = new TestObject();
testObject.setID("07");
testObject.setName("071");
data.add(testObject);
}
private Factory() {
}
public static synchronized Factory creatFactoryPool() {
if (factory == null)
factory = new Factory();
return factory;
}
public TestObject getObject(String id) {
/*
* 通过ID来查找对象
*/
Iterator iterator = getIterator();
TestObject object = null;
int i = 0;
while (iterator.hasNext()) {
object = (TestObject) iterator.next();
if (id.equals(object.getID())) {
i = 1;
/*
* 当返回池中对象时,对象的下面2个属性值做相映的变化
*/
object.setFirstDate(System.currentTimeMillis());
object.setUsed(true);
break;
}
}
if (i == 1) {
return object;
} else {
System.out.println("ID=" + id + "对象不存在!");
return null;
}
}
public TestObject getObject() {
/*
* 获取池中对象,如池中没有多余对象可供选择,即返回一新建对象.
* 如池中对象数目没有达到最大值,就把此对象添加池中.
*/
Iterator iterator = getIterator();
TestObject object = null;
int i = 0;
while (iterator.hasNext()) {
object = (TestObject) iterator.next();
if (object.isUsed() == false) {
i = 1;
object.setFirstDate(System.currentTimeMillis());
object.setUsed(true);
break;
}
}
if (i == 1) {// 得到要查找的对象
return object;
}
if (data.size() < maximum) {
System.out.println("返回新建对象,添加池中!");
object = new TestObject();
object.setUsed(true);
data.add(object);
return object;
} else {
System.out.println("返回新建对象!");
return new TestObject();
}
}
public boolean deleteObject(String id) {
/*
* 根据对象ID来删除对象.成功返回true,失败返回false
*/
Iterator iterator = getIterator();
TestObject object = null;
int i = 0;
while (iterator.hasNext()) {
if (object.getID().equals(id)) {
iterator.remove();
i = 1;
break;
}
}
if (i == 0) {
System.out.println("ID=" + id + "被删除对象不存在!");
return false;
} else {
System.out.println("删除对象成功!");
return true;
}
}
public boolean addObject(TestObject Object) {
return data.add(Object);
}
public void objectManage() {
/*
* 池对象在获取对象时候,都会执行此方法.如果有对象超过30分钟没有使用,
* 就把此对象isUsed属性值改成false
*/
long interval = 30 * 60 * 1000;// 30分钟
Iterator iterator = data.iterator();
TestObject object = null;
long currentTime = System.currentTimeMillis();
while (iterator.hasNext()) {
object = (TestObject) iterator.next();
if (object.isUsed() == false)
continue;
if (currentTime - object.getFirstDate() >= interval) {
object.setUsed(false);
}
}
}
public Collection getData() {
return data;
}
public Iterator getIterator() {
objectManage();
return data.iterator();
}
}
Factory类提供了获取对象的相关方法,程序还有不少要改进的地方,贴出来让大家提出改进的意见!
posted on 2007-05-10 23:03
二胡
阅读(129)
评论(0)
编辑
收藏
所属分类:
Java
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
JSR规范大全
java编程常见BUG---不完善的异常处理
计算机科学经典论文
利用Eclipse进行重构
设计模式图
关于ArrayList类的疑惑!
转 基于WEB应用开发的java程序员必备工具
转 JAVA正则表达式高级用法(分组与捕获)
netbeas 相关快捷键
转 高效的Java异常处理框架
Powered by:
BlogJava
Copyright © 二胡