【笔记】获取新浪财经最新的USDT-CNY的汇率
访客
阅读:21
2024-06-20 19:55:51
评论:0
package util; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.math.BigDecimal; import java.net.HttpURLConnection; import java.net.URL; import java.util.HashMap; import java.util.Map; import org.apache.log4j.Logger; import org.directwebremoting.json.types.JsonArray; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Service; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import hry.core.constant.StringConstant; import hry.core.quartz.QuartzJob; import hry.core.quartz.QuartzManager; import hry.core.quartz.ScheduleJob; import hry.core.util.date.DateUtil; import hry.core.util.sys.ContextUtil; import hry.redis.common.utils.RedisService; @Service @Scope public class HuiLvService { private static final Logger log=Logger.getLogger(HuiLvService.class); public static void getHuilvData() { log.info("-----进入汇率定时器-----"); RedisService redisService=(RedisService) ContextUtil.getBean("redisService"); JSONArray obj=JSON.parseArray(redisService.get("configCache:financeConfig")); for(Object o:obj){ JSONObject oo=JSON.parseObject(o.toString()); if("ChooseRate".equals(oo.getString("configkey"))){ String value=oo.getString("value"); if("1".equals(value)){ redisService.save("USDCNY", "0"); log.info("读取后台手动配置的USDCNY汇率"); return; } } } BufferedReader reader=null; String result=null; StringBuffer sbf=new StringBuffer(); long currentTime=System.currentTimeMillis(); String httpUrl="http://hq.sinajs.cn/"; String httpArg="rn="+currentTime+"list=fx_susdcny"; httpUrl=httpUrl + "?" + httpArg; try { URL url=new URL(httpUrl); HttpURLConnection connection=(HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.connect(); InputStream is=connection.getInputStream(); reader=new BufferedReader(new InputStreamReader(is, "GBK")); String strRead=null; while ((strRead=reader.readLine()) !=null) { sbf.append(strRead); sbf.append("\r "); } reader.close(); result=sbf.toString(); String [] arr=result.split(","); redisService.save("USDCNY", arr[8]); log.info("最新USDCNY汇率:" +new BigDecimal(arr[8])); } catch (Exception e) { e.printStackTrace(); } } public static void getHuilvDataJob() { ScheduleJob job=new ScheduleJob(); job.setBeanClass("util.HuiLvService"); job.setMethodName("getHuilvData"); // Object[] object={ 1 }; // job.setMethodArgs(object); QuartzManager.addJob("huilvData", job, QuartzJob.class, "0 0/5 * * * ?");//5分钟 } public static void main(String[] args) { String httpUrl="http://hq.sinajs.cn/"; String httpArg="rn=1526351165800list=fx_susdcny"; long currentTime=System.currentTimeMillis(); System.out.println(currentTime); // String send=getHuilvData(httpUrl, httpArg); // String send=HttpConnectionUtil.getSend(httpUrl, httpArg); // System.out.println(send); } }
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
发表评论