本文小编为大家详细介绍“java监控目录下文件变动的代码怎么写”,内容详细,步骤清晰,细节处理妥当,希望这篇“java监控目录下文件变动的代码怎么写”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
代码如下:
import static java.nio.file.StandardWatchEventKinds.ENTRY_CREATE;
import static java.nio.file.StandardWatchEventKinds.ENTRY_DELETE;
import static java.nio.file.StandardWatchEventKinds.ENTRY_MODIFY;
import java.nio.file.FileSystems;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.WatchEvent;
import java.nio.file.WatchEvent.Kind;
import java.nio.file.WatchKey;
import java.nio.file.WatchService;
public class MyFileWatcher {
// 只能监控该目录下的文件/文件夹的变动(不监控子目录)
static final String aPath = "E:/tmp";
public static void main(String[] args) throws Throwable {
System.out.println("Starting watcher for " + aPath);
Path p = Paths.get(aPath);
WatchService watcher = FileSystems.getDefault().newWatchService();
Kind<?>[] watchKinds = { ENTRY_CREATE, ENTRY_DELETE, ENTRY_MODIFY };
p.register(watcher, watchKinds);
boolean run = true;
while (run) {
WatchKey key = watcher.take();
for (WatchEvent<?> e : key.pollEvents()) {
//e.kind()是事件类型
//e.context()是发生变动的文件/文件夹的名字
System.out.println("Saw event " + e.kind() + " on " + e.context());
if (e.context().toString().equals("stop.txt")) {
System.out.println("stop monitoring");
run = false;
break;
}
}
if (!key.reset()) {
System.out.println("Key failed to reset");
}
}
}
}
常用的java框架有哪些
1.SpringMVC,Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架。
2.Shiro,Apache Shiro是Java的一个安全框架。
3.Mybatis,MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。
4.Dubbo,Dubbo是一个分布式服务框架。
5.Maven,Maven是个项目管理和构建自动化工具。
6.RabbitMQ,RabbitMQ是用Erlang实现的一个高并发高可靠AMQP消息队列服务器。
7.Ehcache,EhCache 是一个纯Java的进程内缓存框架。
读到这里,这篇“java监控目录下文件变动的代码怎么写”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注天达云行业资讯频道。