根据SVN距给定时间之后提交的文件进行增量部署Java工具类
来源:互联网 发布:影子网络怎么进入 编辑:程序博客网 时间:2024/04/30 10:48
这个工具类的作用详见代码注释。
如果你每天都要进行增量部署,那么使用这个工具类,可以大大简化部署程序,省去一大堆麻烦。
package com.arvon.filedetector;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.text.SimpleDateFormat;/** * 找出给定时间之后的所有修改过的文件, * 将该文件的路径截取一定级别拷贝到另一个文件夹中 *@author Huangwen *2017-4-6 */public class FileDetector {public static void detectAllFile(File f,String time) throws Exception{long ts = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(time).getTime(); String[] split = f.getPath().split("WebRoot"); String p = split.length>1 ? split[1].substring(1) : null; if(p!=null) if(f.lastModified() >= ts && (f.isFile())){ System.out.println(p); moveTo(f,"D:\\filesupdated\\"+p); } if(f.isDirectory()){ File[] f1 = f.listFiles(); for(int i = 0;i < f1.length;i++) detectAllFile(f1[i],time); //递归调用 }}public static void moveTo(File oldFile,String dir) throws Exception{new File(dir.substring(0,dir.lastIndexOf("\\")+1)).mkdirs(); //创建文件夹InputStream inStream = new FileInputStream(oldFile); FileOutputStream fs = new FileOutputStream(dir); byte[] buffer = new byte[1444]; int byteread = 0; while ( (byteread = inStream.read(buffer)) != -1) fs.write(buffer, 0, byteread); inStream.close(); }}//-----------------------------------package com.arvon.filedetector;import java.io.File;/** * 测试类 *@author Huangwen *2017-4-6 */public class FileTest {public static void main(String[] args) throws Exception {String uri= "D:\\svn_worl\\syjd\\WebRoot\\";File f = new File(uri);FileDetector.detectAllFile(f,"2017-04-06 12:10:00");}}
0 0
- 根据SVN距给定时间之后提交的文件进行增量部署Java工具类
- svn:重命名文件之后,不允许提交
- svn:重命名文件之后,提交失败问题
- 对获取的文件根据修改的时间进行排序
- android 根据时间是否过期进行文件的删除
- java根据给定的小时数,计算工作日最后结束时间
- sqoop 根据时间增量导入
- 文件的名字重复之后,svn不允许提交到服务器出现以下情况
- java工具类-给定一个file实例将该目录下的文件以及目录输出
- 根据一个给定经纬度的点,进行附近地点查询
- 根据一个给定经纬度的点,进行附近地点查询
- 根据列表拷贝文件和对比,以及SVN提交
- Java eclipse 项目svn忽略不需要提交的文件
- 文件增量备份工具
- 文件增量备份工具
- Java,Mysql-根据一个给定经纬度的点,进行附近500米地点查询–合理利用算法
- Java,Mysql-根据一个给定经纬度的点,进行附近500米地点查询–合理利用算法
- Java进阶(五十)根据一个给定经纬度的点,进行附近500米地点查询–合理利用算法
- VC++ CTabCtrl控件自定义宏使用例子
- as中生成jniLibs目录
- OJ:多重集的插入和删除
- HTTP在.NET中的一些应用和解析
- Tensorflow的Protocol Buffers3编程(一)
- 根据SVN距给定时间之后提交的文件进行增量部署Java工具类
- 每天一个Linux命令(34):du命令
- 将DataTable转换成CSV文件
- Linux学习笔记——例说makefile 增加宏定义
- HDU 4287 Intelligent IME hash
- Android并发编程之图文解析volatile关键字
- ConstraintLayout使用浅谈
- leetcode 93. Restore IP Addresses
- Android Dialog总结