JAVA 多线程 访问网页 - Java / Java SE
小弟目前做了这样一个小东西
数据库里有一组数据 是车牌号+车牌类型的一万多条数据 车牌类型大部分为空
程序与要从数据中将车牌和车牌类型 拼上url 访问车辆违章公布网站
然后将网站的返回结果 取出写入数据库
现在问题是数据库中车牌号对应的类型太少了 而网站的类型比较多
那就需要尝试 车牌和所有类型拼成n多url然后依次访问该网站 取回结果 速度很慢
想用多线程 进行这个操作 可是多线程用得不太熟 哪位 有好的办法提高一下运行速度 或者告诉我一下 这个多线程要怎样写
这个不需要用到多线程的。。
用缓存或批量插入
把你的处理类包装成一个线程类,然后用一个主线程去启动多个子线程就可以了。
怎样包装成线程类?继承Thread,把处理代码写到run方法里。
怎么启动子线程类?new一个线程类,再调用它的start方法。
建议:主线程类有一些同步的方法,比如子线程可以调用该方法来得到新的车牌号;比如子线程得到结果后调用该方法将结果保存到数据库。
什么 叫 "而网站的类型比较多" ?不是只有一个网站啊。
1. 对每条数据的处理 起一个线程MainThread, 其中 有个 lock (Object lock=new Object();)
public void run(){
//...对每一个车型号new 一个新线程去生成url去处理 (新线程 待 后面说明)
//每个线程都要在存起来,如加入ArrayList.
sychronized(lock) {
lock.wait();
}
//有一个线程处理成功后(就是类型匹配对的那个),调用 lock.notify() <
相关问答:
我JSP的页面是:
<%@ page language="java" contentType="text/html; charset=gb2312"
%>
<script>
function Save(){
xmlHttp=GetXmlHttpObject()
if(xmlHttp==nul ......
我是个新手,望高手解答
我现在已经安装了mysql,也有mysql的jdbc。但我怎么配置后,才能在MyEclipse里操作mysql呢?请高手说详细点
打开Myeclipse----window---open perspective---MyEclipse database explorer-- ......
如: @superwaring("unchecked");
这个里面都可以取哪些值啊,还有类似的 @superwaring标签有哪些啊
没用过。。
看jee的api
javax.persistence里
@superwaring("unchecked");只是忽略 ......
大家好,我现在有一个用asp写的聊天室,现在的想添加一个功能,就是当有人上线的时候,发出提示,比如声音响一下,现在想用java实现这个功能,请问大家怎么实现?
谢谢了,我会加分的
asp和java整合到一起去?何必 ......
id name datetime
1 a 2010-05-13 10:15:00
2 b 2010-05-14 09:10:00
3 d 2010-05-14 10:10:00
如何将距离目前最近的那个记录的name 更新为“x”呢
谢谢咯 啊 呵呵
update table_n ......