package com.doumee.task;
|
|
|
import com.doumee.biz.system.SystemDictDataBiz;
|
import org.apache.http.client.methods.CloseableHttpResponse;
|
import org.apache.http.client.methods.HttpGet;
|
import org.apache.http.client.utils.URIBuilder;
|
import org.apache.http.impl.client.CloseableHttpClient;
|
import org.apache.http.impl.client.HttpClients;
|
import org.apache.http.util.EntityUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
|
import java.io.IOException;
|
import java.net.URI;
|
import java.util.Date;
|
import java.util.Map;
|
|
/**
|
* 定时任务
|
* @author jiangping
|
* @date 2021-10-10 14:40:35
|
* https://www.bejson.com/othertools/cron/ cron 表达式生成地址
|
*/
|
@Component
|
@EnableScheduling
|
public class ScheduleTool {
|
|
|
@Autowired
|
private SystemDictDataBiz systemDictDataBiz;
|
/**
|
* 是否开发者
|
*/
|
@Value("${timing}")
|
private Boolean timing;
|
|
|
/**
|
* 缓存省市区
|
* @throws Exception
|
*/
|
@Scheduled(fixedDelay=24*60*60*1000)
|
public void cacheCampus() throws Exception {
|
}
|
/**
|
* 每天凌晨重置所有订单code类初始值
|
* @throws Exception
|
*/
|
@Scheduled(cron="0 0 0 * * ?")
|
public void resetOrderCodes() throws Exception {
|
}
|
|
|
|
/**
|
* 发送get请求
|
* @param url 请求URL
|
* @param param 请求参数 key:value url携带参数 或者无参可不填
|
* @return
|
*/
|
public String doGet(String url, Map<String, String> param) {
|
// 创建Httpclient对象
|
CloseableHttpClient httpclient = HttpClients.createDefault();
|
String resultString = "";
|
CloseableHttpResponse response = null;
|
try {
|
// 创建uri
|
URIBuilder builder = new URIBuilder(url);
|
if (param != null) {
|
for (String key : param.keySet()) {
|
builder.addParameter(key, param.get(key));
|
}
|
}
|
URI uri = builder.build();
|
// 创建http GET请求
|
HttpGet httpGet = new HttpGet(uri);
|
// 执行请求
|
response = httpclient.execute(httpGet);
|
// 判断返回状态是否为200
|
if (response.getStatusLine().getStatusCode() == 200) {
|
resultString = EntityUtils.toString(response.getEntity(), "UTF-8");
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
} finally {
|
try {
|
if (response != null) {
|
response.close();
|
}
|
httpclient.close();
|
} catch (IOException e) {
|
e.printStackTrace();
|
}
|
}
|
return resultString;
|
}
|
|
}
|