DateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss");
Date date=null;
try {
date = dateFormat1.parse("2015-01-01 00:00:00");
//?
} catch (ParseException e) {
e.printStackTrace();
}
Long d = date.getTime();
Random random = new Random();
for(Long i = 0L ;i < 365 ; i++){
OhlcMarketData data = new OhlcMarketData();
data.setCode("AU9999");
data.setPeriod("xD");
data.setBeginTime(new
Date(d+i*24*60*60*1000));
data.setEndTime(new Date(d+(i+1)*24*60*60*1000 -1) );
data.setCreatedBy("TestData");
data.setCreatedTime(new Date());
int r1 = random.nextInt(500);
data.setOpenPrice((double) r1);
data.setHighPrice((double) r1+100);
data.setLowPrice((double) r1+200);
data.setClosePrice((double) r1+300);
data.setVolume((long) (r1*10));
ohlcMarketDataService.create(data);
}
原来的循环的int i 是溢出的.到了i>30后日期就到2014年了.
换了long就对了
本文介绍了一个使用Java生成特定格式日期及随机市场数据的例子。通过SimpleDateFormat设置日期格式,并利用Random类生成价格和成交量等数据,实现了为期一年的数据填充。文章还提及了循环变量类型从int改为long以避免整数溢出的问题。

被折叠的 条评论
为什么被折叠?



