java执行数据库备份语句,java 执行批处理文件.bat 数据库自动备份

1.提前写好备份.bat,放在某个文件夹里,将路径设置在.properties里的

@echo off

set txt=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%

echo %txt%

echo --------------------------------------------------

echo -------------正在执行oracle数据库备份--------------

echo --------------------------------------------

echo ...

echo ...

echo 导出Database...

if exist %txt%.dmp del %txt%.dmp

exp userid=user/user@ORCL file=d:/%txt%.dmp

echo ...

echo ...

echo 备份完成!

exit

2.在XML文件里添加监听

com.dbbackup.DbBackUpListener

3.主程序

import java.io.FileNotFoundException;

import java.io.IOException;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Timer;

import java.util.TimerTask;

import javax.servlet.ServletContext;

import javax.servlet.ServletContextEvent;

import javax.servlet.ServletContextListener;

public class DbBackUpListener implements ServletContextListener {

// 设置备份间隔时间

int intTime = 60;//这里设置1分钟执行一次

public void contextDestroyed(ServletContextEvent sce) {

}

public void contextInitialized(ServletContextEvent sce) {

ServletContext ctx = sce.getServletContext();

// 取得.bat文件的路径。路径设置到了.properties里

String filePath = PropertyUtil

.getProperty("WEB-INF/test.bat");

PickTask picktask = new PickTask(ctx.getRealPath(filePath));

// 多久执行一次

picktask.start(1, intTime);

}

}

class PickTask {

private Timer timer;

private String fileName = null;

public PickTask(String fileName1) {

this.timer = new Timer();

this.fileName = fileName1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值