<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 閱讀(812) 評論(0)  編輯  收藏 所屬分類: 其他
    主站蜘蛛池模板: 亚洲国产成人精品无码久久久久久综合 | 亚洲国产精品一区| 亚洲av无码成人精品国产 | 久久91亚洲人成电影网站| 乱爱性全过程免费视频| 亚洲国产一区明星换脸| 欧亚一级毛片免费看| 国产L精品国产亚洲区久久| 一个人免费观看日本www视频 | 亚洲国产成人久久一区WWW| 久久成人18免费网站| 亚洲一区二区三区偷拍女厕| 日韩电影免费在线观看网站| 久久91亚洲人成电影网站| 91精品导航在线网址免费| 亚洲国产精品yw在线观看| 9久9久女女免费精品视频在线观看 | 亚洲av无码片vr一区二区三区| 无码人妻一区二区三区免费| 亚洲入口无毒网址你懂的| 大学生高清一级毛片免费| 亚洲av片在线观看| 久久综合亚洲色HEZYO国产| 久久久免费观成人影院| 亚洲色图国产精品| 四虎影院免费视频| 国产免费播放一区二区| 亚洲最大的成网4438| 女人让男人免费桶爽30分钟| 免费很黄无遮挡的视频毛片| 日本亚洲视频在线| 成人无码区免费视频观看| 污污污视频在线免费观看| 亚洲AV成人一区二区三区AV| 人禽杂交18禁网站免费| eeuss影院ss奇兵免费com| 亚洲无线一二三四区| 免费大黄网站在线看| 国产亚洲情侣一区二区无| 99热在线观看免费| 亚洲中文字幕第一页在线|