返回顶部
首页 > 资讯 > 精选 >Java利用WatchService监听文件变化示例
  • 545
分享到

Java利用WatchService监听文件变化示例

watchservicejavahs 2023-05-31 00:05:11 545人浏览 薄情痞子
摘要

在实现配置中心的多种方案中,有基于jdk7+的WatchService方法,其在单机应用中还是挺有实践的意义的。代码如下:package com.longge.mytest;import java.io.IOException;import

在实现配置中心的多种方案中,有基于jdk7+的WatchService方法,其在单机应用中还是挺有实践的意义的。

代码如下:

package com.longge.mytest;import java.io.IOException;import java.NIO.file.FileSystems;import java.nio.file.Path;import java.nio.file.Paths;import java.nio.file.StandardWatchEventKinds;import java.nio.file.WatchEvent;import java.nio.file.WatchKey;import java.nio.file.WatchService;import java.util.List;public class TestWatchService {  public static void main(String[] args) throws IOException {    // 需要监听的文件目录(只能监听目录)    String path = "d:/test";        WatchService watchService = FileSystems.getDefault().newWatchService();    Path p = Paths.get(path);    p.reGISter(watchService, StandardWatchEventKinds.ENTRY_MODIFY,         StandardWatchEventKinds.ENTRY_DELETE,         StandardWatchEventKinds.ENTRY_CREATE);         Thread thread = new Thread(() -> {      try {         while(true){           WatchKey watchKey = watchService.take();           List<WatchEvent<?>> watchEvents = watchKey.pollEvents();           for(WatchEvent<?> event : watchEvents){             //TODO 根据事件类型采取不同的操作。。。。。。。             System.out.println("["+path+"/"+event.context()+"]文件发生了["+event.kind()+"]事件");            }           watchKey.reset();         }       } catch (InterruptedException e) {         e.printStackTrace();       }    });    thread.setDaemon(false);    thread.start();        // 增加JVM关闭的钩子来关闭监听    Runtime.getRuntime().addShutdownHook(new Thread(() -> {      try {        watchService.close();      } catch (Exception e) {      }    }));  }}

--结束END--

本文标题: Java利用WatchService监听文件变化示例

本文链接: https://lsjlt.com/news/222522.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java利用WatchService监听文件变化示例
    在实现配置中心的多种方案中,有基于JDK7+的WatchService方法,其在单机应用中还是挺有实践的意义的。代码如下:package com.longge.mytest;import java.io.IOException;import...
    99+
    2023-05-31
    watchservice java hs
  • 怎么在JAVA中利用WatchService监控文件
    今天就跟大家聊聊有关怎么在JAVA中利用WatchService监控文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用场景场景一:比如系统中的配置文件,一般都是系统启动的时候只加...
    99+
    2023-05-30
    watchservice java
  • 怎么在Java中使用WatchService监控文件内容变化
    这篇文章将为大家详细讲解有关怎么在Java中使用WatchService监控文件内容变化,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。实现方案自己起一个单独线程,定时加载文件,实现较简单,但...
    99+
    2023-05-30
    java watchservice
  • golang监听文件变化的实例
    废话不多说,直接上官网demo package main import ( "log" "github.com/fsnotify/fsnotify" ) func main(...
    99+
    2024-04-02
  • java如何监听文件变化并读取文件
    Java中可以使用java.nio.file包中的WatchService类来监听文件的变化,并使用BufferedReader类来...
    99+
    2023-09-26
    java
  • java怎么监听文件变化并读取文件
    Java可以通过使用Java NIO包中的WatchService类来监听文件变化,并使用Java IO或Java NIO来读取文件...
    99+
    2023-10-27
    java
  • VUE监听窗口变化事件的示例分析
    这篇文章将为大家详细讲解有关VUE监听窗口变化事件的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Vuejs 本身就是一个 MVVM 的框架。但是在监听 wind...
    99+
    2024-04-02
  • Java实现监听文件变化的三种方案详解
    目录背景方案一:定时任务 + File#lastModified方案二:WatchService方案三:Apache Commons-IO小结背景 在研究规则引擎时,如果规则以文件的...
    99+
    2024-04-02
  • Python利用watchdog模块监控文件变化
    目录1.准备2.基本使用3.监控文件变化假设现在有一个应用场景,需要对文件系统进行监控,发生变化时产生日志,对新增的文件做一些相应的操作。 比如说应用到我们之前的音乐高潮提取器:若当...
    99+
    2024-04-02
  • vuex 中怎么利用state监听数组变化
    这期内容当中小编将会给大家带来有关vuex 中怎么利用state监听数组变化,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。import Vue fro...
    99+
    2024-04-02
  • vue中怎么利用watch监听数据变化
    vue中怎么利用watch监听数据变化,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、watch使用的几种方法(1)通过watch监听dat...
    99+
    2024-04-02
  • Android创建文件实现对文件监听示例
    代码如下:public class FileObserverTest extends Activity{@Overrideprotected void onCreate(Bu...
    99+
    2022-06-06
    示例 监听 Android
  • 使用golang怎么对文件的变化进行监听
    本篇文章为大家展示了使用golang怎么对文件的变化进行监听,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。package mainimport ("log"&...
    99+
    2023-06-14
  • java.nio.file.WatchService 实时监控文件变化的示例代码
    目录1.示例代码2.其实并没有实时在平时的开发过程中,会有很多场景需要实时监听文件的变化,如下:1、通过实时监控 mysql 的 binlog 日志实现数据同步2、修改配置文件后,希...
    99+
    2024-04-02
  • SpringBoot如何监听redis Key变化事件案例详解
    目录一 、功能概览二、事件类型三、配置三、案例代码新增和修改都是set指令删除过期总结键空间通知(keyspace notification) 一 、功能概览 键空间通知使得客户端可...
    99+
    2022-11-13
    springboot监听redis key变化 springboot监听redis过期key
  • Shell脚本实现监测文件变化的示例详解
    目录代码使用方法我最近在使用linux的过程中遇到,遇到这样一个需求:监测某个文件的创建,变动、删除,并记录文件的每一个版本。我在网上没有找到合适的脚本或工具,然后我就自己写了一个shell脚本实现这个需求。 代码 完整...
    99+
    2022-06-22
    Shell监测文件变化 Shell监测文件
  • NodeJS Web应用监听sock文件实例
    像 NodeJS 写的 TCP 服务可以监听在某个 sock 文件(Domain Socket) 上,它的 HTTP 服务也能这么干。虽然作为 HTTP 服务连接某个 sock 文件的意义不大,所以这里只算...
    99+
    2022-06-04
    实例 文件 NodeJS
  • SQL Server CDC配合Kafka Connect监听数据变化的示例分析
    这篇文章主要为大家展示了“SQL Server CDC配合Kafka Connect监听数据变化的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“SQL&nb...
    99+
    2023-06-22
  • 如何用Shell监控文件变化
    这篇文章主要讲解了“如何用Shell监控文件变化”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用Shell监控文件变化”吧!文件监控可以配合rsync实现文件自动同步,例如监听某个目录,...
    99+
    2023-06-15
  • 利用nodejs监控文件变化并使用sftp上传到服务器
    最近在用react+express做一个自己的工具型网站(其实就是夺宝岛抢拍器) 然后因为经常要改动,而且又要放到服务器上进行测试。总是要webpack,然后手动把文件上传上去,不胜其烦,索性搜索了下,直接...
    99+
    2022-06-04
    服务器 文件 nodejs
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作