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

推荐订阅源

Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
U
Unit 42
H
Help Net Security
博客园_首页
雷峰网
雷峰网
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园 - 【当耐特】
Recent Announcements
Recent Announcements
Recorded Future
Recorded Future
aimingoo的专栏
aimingoo的专栏
爱范儿
爱范儿
C
CXSECURITY Database RSS Feed - CXSecurity.com
The Cloudflare Blog
S
Security @ Cisco Blogs
M
MIT News - Artificial intelligence
Cyberwarzone
Cyberwarzone
Cisco Talos Blog
Cisco Talos Blog
Spread Privacy
Spread Privacy
The GitHub Blog
The GitHub Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
K
Kaspersky official blog
MyScale Blog
MyScale Blog
阮一峰的网络日志
阮一峰的网络日志
C
CERT Recently Published Vulnerability Notes
V
Vulnerabilities – Threatpost
WordPress大学
WordPress大学
C
Cisco Blogs
G
Google Developers Blog
N
News and Events Feed by Topic
P
Palo Alto Networks Blog
Apple Machine Learning Research
Apple Machine Learning Research
Schneier on Security
Schneier on Security
博客园 - 聂微东
Security Latest
Security Latest
Security Archives - TechRepublic
Security Archives - TechRepublic
O
OpenAI News
云风的 BLOG
云风的 BLOG
IT之家
IT之家
PCI Perspectives
PCI Perspectives
Microsoft Security Blog
Microsoft Security Blog
NISL@THU
NISL@THU
小众软件
小众软件
Scott Helme
Scott Helme
大猫的无限游戏
大猫的无限游戏
L
LINUX DO - 最新话题
Microsoft Azure Blog
Microsoft Azure Blog
Simon Willison's Weblog
Simon Willison's Weblog
N
News and Events Feed by Topic
F
Fortinet All Blogs
The Last Watchdog
The Last Watchdog

博客园 - 我的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)  评论()    收藏  举报