惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
The GitHub Blog
The GitHub Blog
J
Java Code Geeks
Engineering at Meta
Engineering at Meta
N
Netflix TechBlog - Medium
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
B
Blog RSS Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Vercel News
Vercel News
腾讯CDC
博客园 - 聂微东
The Cloudflare Blog
F
Fortinet All Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
Last Week in AI
Last Week in AI
B
Blog

博客园 - 我的bug

项目引入同一jar包不同版本处理 【笔记】redis实现类 【笔记】websockt一对一聊天java部分 【笔记】vue中websocket心跳机制 【笔记】MySQL删除重复记录保留一条 oss上传实例 jquery实现图片点击旋转 IDEA卡顿解决方法 斐波那契数列 【笔记】接口发送数据及接收 【笔记】Java 信任所有SSL证书(解决PKIX path building failed问题) 【笔记】jquery判断两个日期之间相差多少天 【笔记】spring定时器时间配置实例 【笔记】jquery加减乘除及科学计算法处理 string 日期相加和相减 sql查询慢原因及优化 java小算法复习 找出一组数字中出现最多的字符 【转载】js清空cookie
【笔记】获取新浪财经最新的USDT-CNY的汇率
我的bug · 2018-07-23 · via 博客园 - 我的bug

---恢复内容开始---

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;



/**
 * 调用汇率
 * 
 * @author Administrator
 * 
 */
@Service
@Scope
public class HuiLvService {
	private static final Logger log = Logger.getLogger(HuiLvService.class);

    /**
     * @param urlAll
     *            :请求接口
     * @param httpArg
     *            :参数
     * @return 返回结果
     */
    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\n");
            }
            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();
        }
    }

    /**
	 * getHuilvData 定时器
	 * <p>
	 * TODO
	 * </p>
	 * 
	 */
	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);
    }
}

---恢复内容结束---

posted @ 2018-07-23 14:59  我的bug  阅读(3122)  评论()    收藏  举报