实现 Java 多线程并发控制框架--转载Java 提供了语言级别的线程支持,所以在 Java 中使用多线程相对于 C,C++ 来说更简单便捷,但本文并不是介绍如何在 Java 中使用多线程来来解决诸如 Web services, Number crunching 或者 I/O processing 之类的问题。在本文中,我们将讨论如何实现一个 Java 多线程的运行框架以及我们是如何来控制线程的并发同步以及顺序执行的。 所面临的问题 图 1. 线程场景 这幅图中节点代表一个 single Thread,边代表执行的步骤。 整幅图代表的意思是,ROOT 线程执行完毕后执行 T1 线程,T1 执 Read More
posted @ 2011-05-05 13:58 为谁 Views(2304) Comments(0) Diggs(0) Edit
ThreadGroup其实比ExecutorService更好 用java做抓取的时候免不了要用到多线程的了,因为要同时抓取多个网站或一条线程抓取一个网站的话实在太慢,而且有时一条线程抓取同一个网站的话也比较浪费CPU资源。要用到多线程的等方面,也就免不了对线程的控制或用到线程池。 我在做我们现在的那一个抓取框架的时候,就曾经用过java.util.concurrent.ExecutorService作为线程池,关于ExecutorService的使用代码大概如下:java.util.concurrent.Executors类的API提供大量创建连接池的静态方法:1.固定大小的线程池: 1 p Read More
posted @ 2011-05-05 13:56 为谁 Views(16106) Comments(3) Diggs(1) Edit
Java5 多线程与TCP编程实践Java5增加了新的类库并发集java.util.concurrent,该类库为并发程序提供了丰富的API多线程编程在Java 5中更加容易,灵活。本文通过一个网络服务器模型,来实践Java5的多线程编程,该模型中使用了Java5中的线程池,阻塞队列,可重入锁等,还实践了Callable, Future等接口,并使用了Java 5的另外一个新特性泛型。简介本文将实现一个网络服务器模型,一旦有客户端连接到该服务器,则启动一个新线程为该连接服务,服务内容为往客户端输送一些字符信息。一个典型的网络服务器模型如下:1. 建立监听端口。2. 发现有新连接,接受连接,启动 Read More
posted @ 2011-05-05 13:54 为谁 Views(456) Comments(0) Diggs(0) Edit
JDK5中的一个亮点就是将Doug Lea的并发库引入到Java标准库中。Doug Lea确实是一个牛人,能教书,能出书,能编码,不过这在国外还是比较普遍的,而国内的教授们就相差太远了。 一般的服务器都需要线程池,比如Web、FTP等服务器,不过它们一般都自己实现了线程池,比如以前介绍过的Tomcat、Resin和Jetty等,现在有了JDK5,我们就没有必要重复造车轮了,直接使用就可以,何况使用也很方便,性能也非常高。 Java代码?12345678910111213141516171819202122232425 package concurrent;import java.util.co Read More
posted @ 2011-05-05 13:34 为谁 Views(1732) Comments(0) Diggs(0) Edit
创建表空间打开sqlplus工具:Sql代码sqlplus/nolog连接数据库:Sql代码conn/assysdba创建表空间:Sql代码createtablespacecamdsdatafile'D:\oracle\product\10.2.0\oradata\camds\camds.dbf'size200mautoextendonnext10mmaxsizeunlimited;5、创建新用户运行“P/L SQL Developer”工具,以DBA(用户名:System)的身份登录:1)新建“User(用户):2)设置用户名、口令、默认表空间(使用上面新建的表空间)和临时表 Read More
posted @ 2011-04-26 12:00 为谁 Views(1104) Comments(0) Diggs(0) Edit
/* 以下是 Java 判断字符串是否为空的三种方法.方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法.方法三: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 推荐使用方法二.以下代码在机器上的运行结果: (机器性能不一, 仅供参考)function 1 use time:328msfunction 2 use time:203msfunction 3 use time: 282ms*/public class CompareStringNothing {String s = & Read More
posted @ 2011-04-18 18:45 为谁 Views(471) Comments(0) Diggs(0) Edit
JFreeChart教程(一)一、JFreeChart获取。JFreeChart是JFreeChart公司在开源网站SourceForge.net上的一个项目,该公司的主要产品有如下:1、JFreeReport:报表解决工具2、JFreeChart:Java图形解决方案(Application/Applet/Servlet/Jsp)3、JCommon:JFreeReport和JFreeChart的公共类库4、JFreeDesigner:JFreeReport的报表设计工具我们可以从jfree官方网站上获取最新版本(最新的版本是1.0.5)和相关资料(但是jfree的Developer Guid Read More
posted @ 2011-04-14 20:35 为谁 Views(1819) Comments(0) Diggs(0) Edit
java 调用飞信发短信 转网上看到有网页版的飞信,http://fetionlib.appspot.com/可以添加好友,群发和定时发送短信给飞信好友,还开放了API接口供程序调用,可以用它来监控机器是否正常服务定期给管理员发短信,或者小规模的网站给会员发短信之类的服务。重要提示:近期所有appspot的https都惨遭RESET,请先前使用API的用户,把调用地址中https改成http简单测试一下:http://fetionlib.appspot.com/restlet/fetion/13812345678/password/13912345678/message其中1381234567 Read More
posted @ 2011-04-14 15:25 为谁 Views(3858) Comments(0) Diggs(0) Edit
JFreeChart简单介绍及入门实例 今天下午什么都没做,就搞了两个例子,一个是针对Application开发的,另一个是针对Web开发的。当然我是刚刚学习这东西,在所难免要借某些同仁的作品参考,在这里要特别谢谢日月星辰的作者。同时也要感谢来了,就好!的作者。一、JFreeChart获取。JFreeChart是JFreeChart公司在开源网站SourceForge.net上的一个项目,该公司的主要产品有如下:1、JFreeReport:报表解决工具2、JFreeChart:Java图形解决方案(Application/Applet/Servlet/Jsp)3、JCommon:JFreeRe Read More
posted @ 2011-04-13 20:14 为谁 Views(1241) Comments(0) Diggs(0) Edit
java发邮件文章分类:Java编程关键字: java email 邮件记得曾经学习用javamail发邮件,学了2天,大概搞明白了利用javamail发邮件的方法和注意事项。这周末在网上闲逛时,发现了另外一个发邮件的好东东。commons-email-1.1.jar: 这是Apache组织下的一个项目,主要就是对java的邮件功能进行了封装,用起来更加方便,简单。接下来我们就说说这个jar包。首先肯定得下载commons-email-1.1.jar,并下载mail.jar和activation.jar(它们可以从sun的网站上下载,从下载的javamail和jaf中找到)。如果没有mail. Read More
posted @ 2011-04-13 19:19 为谁 Views(4396) Comments(1) Diggs(0) Edit