这是第一种,带body的
@PostMapping("getUserList")
public int getUserList() {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
List<user> addList = new ArrayList<>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 格式化
//获取前1天的日期
Calendar now = Calendar.getInstance();
now.add(Calendar.DAY_OF_MONTH, -1);
String startDate = sdf.format(now.getTime());
//获取明天的日期
Calendar now2 = Calendar.getInstance();
now2.add(Calendar.DAY_OF_MONTH, 1);
String endDate = sdf.format(now2.getTime());
try {
//获取昨天和今天的数据
String url1 = "https://xxxxx.com.cn/api" ;
String body = "[]";
URL url = new URL(url1);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
conn.setRequestProperty("Content-Type", "application/json;charset=UTF-8");
conn.setRequestProperty("Authorization", AUTH);
conn.setDoOutput(true);
try (OutputStream outputStream = conn.getOutputStream()) {
outputStream.write(body.getBytes());
}
// 获取输入流
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
System.out.println(response);
}
reader.close();
// 关闭连接
conn.disconnect();
result = response.toString();
//处理逻辑
JSONObject objResult = JSONObject.parseObject(result);
} catch (Exception e) {
e.printStackTrace();
}
//使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return 1;
}
这是第二种,不带body的
@PostMapping("getJgqdList")
public int getJgqdList() {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
List<jgqd> addList = new ArrayList<>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // 格式化
//获取前1天的日期
Calendar now = Calendar.getInstance();
now.add(Calendar.DAY_OF_MONTH, -1);
String startDate = sdf.format(now.getTime());
//获取今天的日期
Date date = new Date();
String endDate = sdf.format(date);
try {
String url = "https://xxx.com.cn/api/" + startDate + "&EDate=" + endDate;
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
conn.setRequestProperty("Content-Type", "application/json;charset=UTF-8");
conn.setRequestProperty("Authorization", AUTH);
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
result += line;
}
JSONObject objResult = JSONObject.parseObject(result);
} catch (Exception e) {
e.printStackTrace();
}
//使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
if(0 < addList.size()){
dao.insertJgqd(addList);
}
return 1;
}