zoukankan      html  css  js  c++  java
  • java 监听配置文件,无需重启服务即可热修改配置信息

    1.依赖包
    <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-core</artifactId>
                <version>5.5.7</version>
    </dependency>
    
    2.实现代码
    File file = FileUtil.file("example.properties");
    //这里只监听文件或目录的修改事件
    WatchMonitor watchMonitor = WatchMonitor.create(file, WatchMonitor.ENTRY_MODIFY);
    watchMonitor.setWatcher(new Watcher(){
        @Override
        public void onCreate(WatchEvent<?> event, Path currentPath) {
            Object obj = event.context();
            Console.log("创建:{}-> {}", currentPath, obj);
        }
    
        @Override
        public void onModify(WatchEvent<?> event, Path currentPath) {
            Object obj = event.context();
            Console.log("修改:{}-> {}", currentPath, obj);
        }
    
        @Override
        public void onDelete(WatchEvent<?> event, Path currentPath) {
            Object obj = event.context();
            Console.log("删除:{}-> {}", currentPath, obj);
        }
    
        @Override
        public void onOverflow(WatchEvent<?> event, Path currentPath) {
            Object obj = event.context();
            Console.log("Overflow:{}-> {}", currentPath, obj);
        }
    });
    
    //设置监听目录的最大深入,目录层级大于制定层级的变更将不被监听,默认只监听当前层级目录
    watchMonitor.setMaxDepth(3);
    //启动监听
    watchMonitor.start();
    

      

  • 相关阅读:
    DataGridViewer表格中设置ProgressBar显示进度百分比和修改进度条颜色
    excel操作
    sql的时间
    DateTime的各种用法
    DataGridViewer表格中将Button设置为不可用
    OpenCV特征检测和特征匹配
    切片
    c#命名规范
    Remove Linked List Elements
    Remove Nth Node From End of List
  • 原文地址:https://www.cnblogs.com/zf-crazy/p/14301104.html
Copyright © 2011-2022 走看看