<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-112  評論-73  文章-0  trackbacks-0
    有一個自動備份mysql 數據庫的需求,windows 下可以寫一個bat文件,然后加入到計劃任務中設置執行,可是偉大的Windows系統加入計劃任務有時間卻不執行,而且設置計劃任務也挺復雜(寫腳本把執行備份的腳本加入計劃中)。那就用程序寫一個吧備份的功能吧。還是調用備份的腳本,自動任務部分使用Spring3的@Scheduled來實現。
    pom.xml文件中依賴的jar:
     <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>3.1.4.RELEASE</version>
            </dependency>

            <dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz</artifactId>
                <version>1.8.5</version>
            </dependency>
    </dependencies>
    spring-config.xml配置如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:task
    ="http://www.springframework.org/schema/task"
           xmlns:context
    ="http://www.springframework.org/schema/context"
           xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation
    ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/task
                http://www.springframework.org/schema/task/spring-task-3.1.xsd http://www.springframework.org/schema/context
                http://www.springframework.org/schema/context/spring-context-3.1.xsd"
    >
        <context:component-scan base-package="cn.test" />
        <task:annotation-driven/>
    </beans>

    定義一個接口,寫一個實現類。
    package cn.test;

    /**
     * Created by libo on 13-12-18.
     
    */
    public interface SchedulerService {
        void doSome();
    }
    package cn.test;

    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Component;

    import java.io.*;
    import java.util.Calendar;

    /**
     * Created by libo on 13-12-18.
     
    */
    @Component
    public class SchedulerServiceImpl implements SchedulerService {

        @Scheduled(cron = "0/5 * *  * * ? ")   //每5秒執行一次
        @Override
        public void doSome() {
            System.out.println("do soming" + Calendar.getInstance().getTime());
            Runtime runtime = Runtime.getRuntime();
            Process p = null;
            FileWriter fw = null;
            try {
                //此處執行的是ipconfig命令,可以換成任何cmd 里的命令。
                p = runtime.exec("cmd /c ipconfig /all");
                BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream(), "GBK"));
                // 將命令執行結果保存到文件中
                fw = new FileWriter(new File("C:/temp/cmdout.txt"));
                String line = null;
                while ((line = reader.readLine()) != null) {
                    fw.write(line + "\n");
                }
                fw.flush();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                if (p != null) {
                    p.destroy();
                }
                try {
                    if (fw != null)
                        fw.close();
                    if (p != null)
                        p.getOutputStream().close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            System.out.println("do soming" + Calendar.getInstance().getTime());
        }

    }

    測試類(注意:使用junit是不能測試自動任務地!)
    package cn.test;

    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;

    /**
     * Created by libo on 13-12-18.
     
    */
    public class Test {

        public static void main(String[] args){
            ApplicationContext context = new ClassPathXmlApplicationContext("/spring-config.xml");
            System.out.println("請等待5秒讓任務飛一會兒!");
        }
    }

    end.
    posted on 2013-12-18 16:35 Libo 閱讀(814) 評論(0)  編輯  收藏 所屬分類: 其他
    主站蜘蛛池模板: 亚洲欧洲久久av| 日韩在线a视频免费播放| 亚洲精品白浆高清久久久久久| 国产精品无码亚洲一区二区三区| 成人午夜免费福利视频| 亚洲最大黄色网站| 99久久久精品免费观看国产| 亚洲成人午夜电影| 免费理论片51人人看电影| 亚洲人xxx日本人18| 成年女人毛片免费观看97| 久久综合亚洲色hezyo| 国产91在线免费| 一级女性全黄生活片免费看| 国内精品久久久久久久亚洲| 免费看少妇高潮成人片| 久久综合亚洲色一区二区三区 | 国产成A人亚洲精V品无码性色| 成人无码区免费A∨直播| 亚洲激情在线视频| 69xx免费观看视频| 亚洲日本在线电影| 亚洲乱码中文字幕手机在线| 大地资源中文在线观看免费版 | 好吊妞在线新免费视频| 免费一级国产生活片| 国产猛烈高潮尖叫视频免费| 免费不卡中文字幕在线| 亚洲精品国产精品乱码不卡| 亚洲最大的成人网站| 亚洲精品视频免费看| 亚洲欧美国产国产综合一区| 相泽亚洲一区中文字幕| 18禁成人网站免费观看| 亚洲AV日韩综合一区| 亚洲精品无码国产| 毛片免费视频在线观看| 一级做a爰片久久免费| 久久久亚洲AV波多野结衣| 免费国产a国产片高清| 亚洲精品在线免费观看视频|