package com.cn.until;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
@WebServlet("/imageSerlvet")
public class imageSerlvet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(1024 * 500);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(1024 * 1024 * 5);
try {
List items = upload.parseRequest(request);
// 2. 遍历 items:
for (FileItem item : items) {
// 文件名
String fileName = item.getName();
InputStream in = item.getInputStream();
byte[] buffer = new byte[1024];
int len = 0;
/*
* 用到了io操作浪费资源 是不是可以不用写io 要怎么写
*/
OutputStream out = new FileOutputStream(fileName);
while ((len = in.read(buffer)) != -1) {
out.write(buffer, 0, len);
}
out.close();
in.close();
System.out.println(Sample.get(fileName).toString());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.cn.until;
import java.util.HashMap;
import org.json.JSONObject;
import com.baidu.aip.ocr.AipOcr;
public class Sample {
//设置APPID/AK/SK
public static final String APP_ID = "10570384";
public static final String API_KEY = "74ik5L8ZlazExSPdodV3G2ZQ";
public static final String SECRET_KEY = "eqwGnR5CYQb8aUGaI2dAxQhAqHM10Giu";
public static JSONObject get(String image) {
AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);
client.setConnectionTimeoutInMillis(2000);
client.setSocketTimeoutInMillis(60000);
// 调用接口
String path = image;
JSONObject res = client.basicGeneral(path, new HashMap());
return res;
}
}