在实现配置中心的多种方案中,有基于JDK7 +的WatchService方法,其在单机应用中还是挺有实践的意义的。
代码如下:
包com.longge.mytest; 进口java.io.IOException; 进口java.nio.file.FileSystems; 进口java.nio.file.Path; 进口java.nio.file.Paths; 进口java.nio.file.StandardWatchEventKinds; 进口java.nio.file.WatchEvent; 进口java.nio.file.WatchKey; 进口java.nio.file.WatchService; 进口并不知道;/* * *测试JDK的WatchService监听文件变化 * @author yangzhilong * */公开课TestWatchService { 公共静态void main (String [] args)抛出IOException {//需要监听的文件目录(只能监听目录) 字符串路径=" d:/测试”; .newWatchService WatchService WatchService=FileSystems.getDefault () (); p=Paths.get路径(路径); p。注册(watchService StandardWatchEventKinds.ENTRY_MODIFY, StandardWatchEventKinds.ENTRY_DELETE, StandardWatchEventKinds.ENTRY_CREATE); 线程的线程=新线程(()→{ 尝试{ 而(真){ WatchKey WatchKey=watchService.take (); List之前 运行示例结果类似如下:
(d:/测试/1。txt]文件发生了【修改】事件
[d:/测试/1。txt]文件发生了[ENTRY_DELETE]事件
[d:/测试/新建文本文档。txt]文件发生了[ENTRY_CREATE]事件
[d:/测试/新建文本文档。txt]文件发生了[ENTRY_DELETE]事件
[d:/测试/222. txt]文件发生了[ENTRY_CREATE]事件以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Java利用WatchService监听文件变化示例