|
|
|
@@ -26,13 +26,13 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest; |
|
|
|
import javax.servlet.http.HttpServletResponse; |
|
|
|
import java.io.File; |
|
|
|
import java.io.FileInputStream; |
|
|
|
import java.io.IOException; |
|
|
|
import java.io.InputStream; |
|
|
|
import java.io.*; |
|
|
|
import java.net.HttpURLConnection; |
|
|
|
import java.net.URL; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
import static org.springframework.core.io.buffer.DataBufferUtils.readInputStream; |
|
|
|
|
|
|
|
/** |
|
|
|
* @author gongbiao |
|
|
|
*/ |
|
|
|
@@ -137,6 +137,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { |
|
|
|
pDest.mkdirs(); |
|
|
|
} |
|
|
|
try { |
|
|
|
//downLoadFromUrl(wxRentContract.getFilepath(),filename,filepath); |
|
|
|
FileUtils.copyURLToFile(new URL(wxRentContract.getFilepath()),dest); |
|
|
|
downFile(destPath, filename, response, request); |
|
|
|
org.apache.commons.io.FileUtils.forceDelete(dest); |
|
|
|
@@ -221,6 +222,50 @@ public class WxRentContractServiceImpl implements WxRentContractService { |
|
|
|
return resultData; |
|
|
|
} |
|
|
|
|
|
|
|
public static void downLoadFromUrl(String urlStr,String fileName,String savePath) throws IOException{ |
|
|
|
URL url = new URL(urlStr); |
|
|
|
HttpURLConnection conn = (HttpURLConnection)url.openConnection(); |
|
|
|
//设置超时间为3秒 |
|
|
|
conn.setConnectTimeout(3*1000); |
|
|
|
//防止屏蔽程序抓取而返回403错误 |
|
|
|
conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)"); |
|
|
|
|
|
|
|
//得到输入流 |
|
|
|
InputStream inputStream = conn.getInputStream(); |
|
|
|
//获取自己数组 |
|
|
|
byte[] getData = readInputStream(inputStream); |
|
|
|
|
|
|
|
//文件保存位置 |
|
|
|
File saveDir = new File(savePath); |
|
|
|
if(!saveDir.exists()){ |
|
|
|
saveDir.mkdir(); |
|
|
|
} |
|
|
|
File file = new File(saveDir+File.separator+fileName); |
|
|
|
FileOutputStream fos = new FileOutputStream(file); |
|
|
|
fos.write(getData); |
|
|
|
if(fos!=null){ |
|
|
|
fos.close(); |
|
|
|
} |
|
|
|
if(inputStream!=null){ |
|
|
|
inputStream.close(); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
System.out.println("info:"+url+" download success"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
public static byte[] readInputStream(InputStream inputStream) throws IOException { |
|
|
|
byte[] buffer = new byte[1024]; |
|
|
|
int len = 0; |
|
|
|
ByteArrayOutputStream bos = new ByteArrayOutputStream(); |
|
|
|
while((len = inputStream.read(buffer)) != -1) { |
|
|
|
bos.write(buffer, 0, len); |
|
|
|
} |
|
|
|
bos.close(); |
|
|
|
return bos.toByteArray(); |
|
|
|
} |
|
|
|
|
|
|
|
public void downFile(String filePath, String filename, HttpServletResponse response, |
|
|
|
HttpServletRequest req) { |
|
|
|
try { |
|
|
|
|