java实现bat脚本操作数据库

本文介绍了一个使用Java执行BAT批处理文件的例子。通过Spring框架和Swagger注解,该示例展示了如何从前端接收文件路径参数,并在服务器上执行指定的BAT文件。此外,还涉及了如何处理命令执行后的返回值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java代码
package com.acer.contrller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

@RestController
@RequestMapping(value = "/executeBatFile")
@Api(value = "执行BAT文件")
public class ExecuteBatFile {

@RequestMapping(value = "/execute", method = RequestMethod.POST)
@ApiOperation(value = "实现执行bat文件", response = String.class)
public void execute(@ApiParam(value = "bat文件路径", required = true) @RequestParam("filePath") String filePath) {


//更改路径
/**
* 比如从前端传过来的bat存放路径为c:\bat\test.bat
* 此时就要替换成c:\\bat\\test.bat
* 因为\在java中是转义字符
*/
String execFile = filePath.replace("\\", "\\\\");
String cmdStart = "cmd /c start " + execFile;
Process process = null;
Runtime runtime = Runtime.getRuntime();
try {
//执行cmd窗口并执行bat文件
process = runtime.exec(cmdStart);


} catch (Exception e) {
// TODO: handle exception
}
try {
process.waitFor();
} catch (Exception e) {
// TODO: handle exception
}


int i = process.exitValue();
if (i == 0) {
System.out.println("执行成功");
} else {
System.out.println("执行失败");
}

process.destroy();


}


}

bat文件

@echo off
echo 准备链接数据库
C:
cd C:\Program Files\MySQL\MySQL Server 5.7\bin

echo 进去bin目录

REM  bankdemo是数据库名,root,root是用户名和密码

mysql -uroot -proot bankdemo < C:\Users\acer\Desktop\mysql.sql
echo 链接数据库完成


exit
mysql.sql文件

UPDATE county SET county_name='长丰县' WHERE county_id='1';
COMMIT;
exit



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值