1.需求:打印响应内容的pdf文件

2.场景设置:打印面单,导出响应数据中的pdf文件
3.打印面单下添加BeanShell后置处理器

方法一:
String url ="${Value}";
// 构造URL
URL weburl = new URL(url);
// 打开连接
URLConnection con = weburl.openConnection();
// 设置请求超时
con.setConnectTimeout(5 * 1000);
// 输入流
InputStream is = con.getInputStream();
// 1K的数据缓冲
byte[] bs = new byte[1024];
// 读取到的数据长度
int len;
// 输出的文件流
File sf = new File("G:/${SiOrderId}.pdf"); //导出路径
OutputStream os = new FileOutputStream(sf);
// 开始读取
while ((len = is.read(bs)) != -1) {
os.write(bs, 0, len);
}
// 完毕,关闭所有链接
os.close();
is.close();
方法二:
try { File file = new File("G:/${SiOrderId}.pdf"); // 文件保存路径 String downloadUrl = "${Value}"; // 地址请求链接 FileOutputStream fileOutputStream = new FileOutputStream(file); // 文件写入流 URL url = new URL(downloadUrl); // 实例化一个地址对象 URLConnection connection = url.openConnection(); // 网络请求 InputStream inputStream = connection.getInputStream(); // 获取请求响应流 int length = 0; // 缓冲成功读取长度 byte[] bytes = new byte[1024]; // 数据缓冲区大小 while ((length = inputStream.read(bytes)) != -1) { // 循环从响应流读取字节 fileOutputStream.write(bytes, 0, length); // 循环将字节写入磁盘文件 } fileOutputStream.close(); // 关闭文件写入流 inputStream.close(); // 关闭请求响应流 } catch (IOException e) { log.error("download error ! url :{}, exception:{}", downloadUrl, e); }
转载请写明出处!!!