1. 利用java,把SQL SERVER数据库里面的书库绘制成图表的形式,类似于股票那样有XY轴,曲线显示,怎么做啊
有两种实现方式,一种就是JFreeChart的官方实例MemoryUsageDemo.java.通过一个实现java.Swing.Timer的内部类,在其监听器中将实时数据添加进TimeSeries,由于Timer是会实时执行的,所以这个方法倒是没有什么问题,可以参考代码。
另一种方式就是将实时类实现Runnable接口,在其run()方法中,通过无限循环将实时数据添加进TimeSeries,下面是较简单的实现代码:
java 代码
//RealTimeChart .java
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.XYPlot;
import org.jfree.data.time.Millisecond;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
public class RealTimeChart extends ChartPanel implements Runnable
{
private static TimeSeries timeSeries;
private long value=0;
public RealTimeChart(String chartContent,String title,String yaxisName)
{
super(createChart(chartContent,title,yaxisName));
}
private static JFreeChart createChart(String chartContent,String title,String yaxisName){
//创建时序图对象
timeSeries = new TimeSeries(chartContent,Millisecond.class);
TimeSeriesCollection timeseriescollection = new TimeSeriesCollection(timeSeries);
JFreeChart jfreechart = ChartFactory.createTimeSeriesChart(title,"时间(秒)",yaxisName,timeseriescollection,true,true,false);
XYPlot xyplot = jfreechart.getXYPlot();
//纵坐标设定
ValueAxis valueaxis = xyplot.getDomainAxis();
//自动设置数据轴数据范围
valueaxis.setAutoRange(true);
//数据轴固定数据范围 30s
valueaxis.setFixedAutoRange(30000D);
valueaxis = xyplot.getRangeAxis();
//valueaxis.setRange(0.0D,200D);
return jfreechart;
}
public void run()
{
while(true)
{
try
{
timeSeries.add(new Millisecond(), randomNum());
Thread.sleep(300);
}
catch (InterruptedException e) { }
}
}
private long randomNum()
{
System.out.println((Math.random()*20+80));
return (long)(Math.random()*20+80);
}
}
//Test.java
import java.awt.BorderLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
public class Test
{
/**
* @param args
*/
public static void main(String[] args)
{
JFrame frame=new JFrame("Test Chart");
RealTimeChart rtcp=new RealTimeChart("Random Data","随机数","数值");
frame.getContentPane().add(rtcp,new BorderLayout().CENTER);
frame.pack();
frame.setVisible(true);
(new Thread(rtcp)).start();
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent windowevent)
{
System.exit(0);
}
});
}
}
这两中方法都有一个问题,就是每实现一个图就要重新写一次,因为实时数据无法通过参数传进来,在想有没有可能通过setXXX()方式传进实时数据,那样的话就可以将实时曲线绘制类封装起来,而只需传递些参数即可。
2. java消息推送,一个实时数据的web显示该怎么做
javaweb消息实时推送可以使漏搜用极光平台进行实现。具体操作如下:3. 如何用java实现股票的自动化交易
1、目前,中国股市中,股票自动化交易简称自动交易或机器交易,是投资策略家将自己的交易策略系统化了的电脑程序。这种电脑程序能够代替人在互联网上进行股票、期货、黄金、外汇等证券的交易,故称智能自动化交易。
2、自动交易软件可以对接各类行情分析软件的股票预警窗口,而且在大智慧、通达信、益盟操盘手、东方财富通、新飞狐、交易开拓者等软件皆可适用。软件通过预警窗口读取用户自编公式选出的股票,然后自动买卖。另外还内置了5个经典的卖出模型:破价位卖出、破XX日均线卖出、MACD死叉卖出、KDJ死叉卖出、动态止盈卖出。在股票用户自己买入股票后,不用整天盯盘,通过交易手简单的几个设置,就可以完成无人值守全自动卖出,在业界享有“平仓大师”的美名,既解决了令人纠结的艰苦的盯盘问题,又克服了贪婪、恐惧的人性弱点,该止损就止损,该止盈就卖在相对的高点,有效地规避深套和半道被主力洗出来的局面。
4. 如何用java实现用股票名称查询实时股票信息
1、首先如果用中文名称查询可能出现中文乱码的错误,虽然能够解决,但是步骤上比较麻烦
2、如果你想实现,可以设置超链接也就是
<a href="http://hq.sinajs.cn/list="+名称>实现一下
比如:<a href="http://hq.sinajs.cn/list="+中国人寿>中国人寿</a>
可能在格式上也就是+后面的东西是写在引号内还是引号外,我有点记不起来了
不过这个好解决,你可以尝试一下
5. java 如何实现 获取实时股票数据
一般有三种方式:
网页爬虫。采用爬虫去爬取目标网页的股票数据,去GitHub或技术论坛(如CSDN、51CTO)上找一下别人写的爬虫集成到项目中。
请求第三方API。会有专门的公司(例如网络API市场)提供股票数据,你只需要去购买他们的服务,使用他们提供的SDK,仿照demo开发实现即可。如下图所示:
6. 想做一个类似股票交易的在线网站。用java技术实现,从头开始做。
股票交易的在线网站,界面一般都是flash的,而且都是券商自己在搞。现在比较流行的都是php平台架构,租服器便宜的1000元,贵点的6000元左右一年。系统安全性,说来就话长了,从每个网页到数据库存储每个细节都要注意,而且交易网站,还要有强大的备份系统,磁盘阵列什么的,贵得很的。从头开发?一般都没有从头开发的,提供这样系统的公司有一些,像金网安泰,实力科技等,不过一套怎么也要你50万(最少),年服务费另算。你要自己开发,测试什么的,复杂的很,而且你请的开发人员也不一定熟悉这个子行业,难。成熟的有,我举例的两家公司就有,但肯定不会给你源码的。我原来工作的单位搞过,所以我懂一些,我现在也有个小网站,瞎玩的,没技术含量,“查股吧”,呵呵。
7. 请问怎样用Java获取股票行情历史数据新浪、搜狐、百度财经都可以......
publicclassStockConnection{
publicstaticvoidmain(String[]args){
URLur=null;
try{
//搜狐股票行情历史接口
// ur=newURL("http://q.stock.sohu.com/hisHq?code=cn_300228&start=20130930&end=20131231&stat=1&order=D&period=d&callback=historySearchHandler&rt=jsonp");
//新浪股票行情历史接口
ur=newURL("http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?&rand=random(10000)&symbol=sh600000&end_date=20150809&begin_date=20000101&type=plain");
HttpURLConnectionuc=(HttpURLConnection)ur.openConnection();
BufferedReaderreader=newBufferedReader(newInputStreamReader(ur.openStream(),"GBK"));
Stringline;
while((line=reader.readLine())!=null){
System.out.println(line);
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
8. 用java语言可以实时获取股票数据。我想知道能否用c语言来读取新浪股票信息呢具体怎么实现,谢谢。
你好,可以给你些参考,资金流向,风控等要注意。其他内容还有很多。股市方面问题都可以问的。妇道人家