import javaioFile;
import javautilArrayList;
public class FileSystem1 {
private static ArrayList filelist = new ArrayList();
public static void main(String[] args) {
long a = SystemcurrentTimeMillis();
refreshFileList("c:\\java");
Systemoutprintln(SystemcurrentTimeMillis() - a);
}
public static void refreshFileList(String strPath) {
File dir = new File(strPath);
File[] files = dirlistFiles();
if (files == null) return;
for (int i = 0; i < fileslength; i++) {
if (files[i]isDirectory()) {
refreshFileList(files[i]getAbsolutePath());
}
else
{ String strFileName = files[i]getAbsolutePath()toLowerCase();
Systemoutprintln("---"+strFileName);
filelistadd(files[i]getAbsolutePath());
}
}
}
}
这是递归遍历方式
或者 你可以用java 调用微软cmd命令 用java来接收返回的结果
建议采用缓存处理,按照你说的这种数据量,基于redis的缓存完全可以满足,存取速度可以10W+的,另外,拟采用的hashMap 是ConcurrentHashMap还是其他,页面展示是增量查询还是直接所有的再查询一次,socket数据接收你是用的netty还是mina,这都需要经过仔细的斟酌考虑设计的。有这么大的并发的需求,完全可以考虑做分布式集群的,估计这只是领导想要的目标吧
import javasql;
public class Link {
public static void main(String[] args)
{
String sql;
Connection conn;
Statement stmt;
ResultSet rs;
try
{
String url="jdbc:sqlserver://localhost:1433;databaseName=Chatroom";
String user="sa";
String password="";
conn= DriverManagergetConnection(url,user,password);
stmt=conncreateStatement();
sql="select from Client";
rs=stmtexecuteQuery(sql);
while(rsnext())
{
Systemoutprintln(rsgetString(1));
Systemoutprintln(rsgetString(2));
}
rsclose();
stmtclose();
connclose();
}
catch(Exception e)
{
eprintStackTrace();
}
}
}
试试这段代码。
得先在你的sql server2000数据库中见一个数据库,名为Chatroom,然后在其中建一张表,名为Client。接下来是关键性的两步:
1。配置数据库。打开安全性-》登陆-》sa,设置sa密码为空,以和java代码中连接数据库时引用的用户名和密码一致。右键(LOCAL)(Windows NT),选择安全性身份验证选择“SQL Server和Windows”,审核级别“无”,在启动服务账户中选“系统账户”。到此数据库配置完毕。
2。在java类中添加路径驱动,右键驱动选择添加路径。
这两部完了后,应该就没什么问题了。
以上就是关于目录下面有几十万的文件,有什么技术可以很快的轮询,最好能用java实现的全部的内容,包括:目录下面有几十万的文件,有什么技术可以很快的轮询,最好能用java实现的、JAVA高并发问题,大数据,频繁I/O *** 作。、java从数据库获取记录数的方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)