⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stockservlet.java

📁 JAVA邮件系统
💻 JAVA
字号:
/*
 *  StockServlet.java
 */

import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

/**
 *
 * @author Liyan
 */

//The class hand the Http request
public class StockServlet extends HttpServlet
{


    public void doGet(HttpServletRequest request,
                      HttpServletResponse response)
        throws IOException, ServletException
    {
		HtmlOut htmlOut = new HtmlOut (response);
		String sZqID = request.getParameter("zqid");
		if(sZqID==null||sZqID.trim().length()<1||
		   StockChannel.checkStockCode(sZqID.trim())==false )
		{
			htmlOut.setRedirect("zqerr.htm"); 
			
		}else{
			TemplateList tempList = CommonMethods.getShowStockTemplate();
			makeChannelSSHQ(tempList,htmlOut,sZqID);
		}
		htmlOut.outHtml();
		

    }
	
    public void doPost(HttpServletRequest request,
                      HttpServletResponse response)
        throws IOException, ServletException
    {
        doGet(request, response);
    }
	
//频道处理:
	//获得特定股票的全部信息:
	public void makeChannelSSHQ(TemplateList tempList,HtmlOut desHtml,String sZqID)
	{
		if(sZqID.trim().length()<1)
			return;

		if(tempList==null){
			return;
		}
		// 显示行情	   
		SingleTemplate st0,st1;
    String sTime="";
		st0 = tempList.searchTemplate("ROOT");
		if(st0==null)
		{
					desHtml.setErrorID (desHtml.SINGLE_TEMPLATE_NOTFIND ,
								"","模板错误","Login");
					return;
		}
    	st1 = tempList.searchTemplate("单支股票");
		if(st0==null)
		{
					desHtml.setErrorID (desHtml.SINGLE_TEMPLATE_NOTFIND ,
								"","模板错误","Login");
					return;
		}
		int i1,i2;
		for(i1=0;i1<st0.getKeyNum();i1++)
		{
			desHtml.addString(st0.getStringAt(i1));
			if(st0.getKeyAt(i1).compareTo("cgi-path")==0){
				desHtml.addString(CommonMethods.sHostNameCGI);
			}
					
	   	    if(st0.getKeyAt(i1).compareTo("实时行情")==0)
			{
				String code,name,kaiprice,shouprice,curprice,maxprice,minprice,value,diff,diffv;
				double curpriceV,kaipriceV,shoupriceV,maxpriceV,minpriceV,diffV,diffvV;
				DBOperater DB = new DBOperater ("stock");
				String queryString="";

        String sColor="";
				queryString+="select zqjc , zq_sshq.ZRSP , zq_sshq.JRKP , zq_sshq.ZGJ , zq_sshq.ZDJ , zq_sshq.ZXJ , zq_sshq.CJSS,zq_sshq.SD,zq_sshq.RQ";
				queryString+=" from zq_zqinfo , zq_sshq where zq_zqinfo.zqid = '"+sZqID+"' and zq_sshq.zqid='"+sZqID+"'";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					if(rs!=null&&rs.next())
   				   	{
						//zqjc , zq_sshq.ZRSP , zq_sshq.JRKP , zq_sshq.ZGJ , zq_sshq.ZDJ
						//zq_sshq.ZXJ , zq_sshq.CJSS,zq_sshq.SD 
   				    		
						name = rs.getString(1);
						shouprice=rs.getString(2);
						kaiprice=rs.getString(3);
   						maxprice = rs.getString(4);
   						minprice = rs.getString(5);
   						curprice = rs.getString(6);
   						value = rs.getString(7);
   						diff = rs.getString(8);
   						sTime = rs.getString(9);

						//get the value of the price;
						curpriceV = CommonMethods.GetDouble (curprice,0);
						shoupriceV = CommonMethods.GetDouble (shouprice,0);
						kaipriceV = CommonMethods.GetDouble (kaiprice,0);
						diffV = CommonMethods.GetDouble (diff,0);


						if (diffV>0)
						    sColor="#FF0000";
						else if (diffV <0)
						    sColor="#339966";
            else
                sColor="#000000";
						maxpriceV = CommonMethods.GetDouble (maxprice,0);
						minpriceV = CommonMethods.GetDouble (minprice,0);
						if(shoupriceV!=0)
							diffvV = diffV*100/shoupriceV;
						else
							diffvV = 0;

							//make format of the float value;

						maxprice = CommonMethods.FormatDouble(maxpriceV,2);
						minprice = CommonMethods.FormatDouble(minpriceV,2);
						diff = CommonMethods.FormatDouble(diffV,2);
						diffv = CommonMethods.FormatDouble(diffvV,2);
						curprice = CommonMethods.FormatDouble(curpriceV,2);
						kaiprice = CommonMethods.FormatDouble(kaipriceV,2);
						shouprice = CommonMethods.FormatDouble(shoupriceV,2);
							
   				    	for(i2=0;i2<st1.getKeyNum();i2++)
   				    	{
   				    		desHtml.addString(st1.getStringAt(i2));
							if(st1.getKeyAt(i2).compareTo("cgi-path")==0){
								desHtml.addString(CommonMethods.sHostNameCGI);
							}
   				    		if(st1.getKeyAt(i2).compareTo("股票名称")==0)
   				    			desHtml.addString(name);
   				    		if(st1.getKeyAt(i2).compareTo("股票代码")==0)
   				    			desHtml.addString(sZqID);
   				    		if(st1.getKeyAt(i2).compareTo("当前价")==0)
   				    			desHtml.addString(curprice);
   				    		if(st1.getKeyAt(i2).compareTo("今开盘")==0)
   				    			desHtml.addString(kaiprice);
   				    		if(st1.getKeyAt(i2).compareTo("昨收盘")==0)
   				    			desHtml.addString(shouprice);
   				    		if(st1.getKeyAt(i2).compareTo("涨跌")==0)
   				    			desHtml.addString(diff);
   				    	//	if(st1.getKeyAt(i2).compareTo("幅度%")==0)
   				    		//	desHtml.addString(diffv);

                  if (st1.getKeyAt (i2).compareTo ("颜色")==0)
                    desHtml.addString (sColor);
   				    		if(st1.getKeyAt(i2).compareTo("最高")==0)
   				    			desHtml.addString(maxprice);
   				    		if(st1.getKeyAt(i2).compareTo("最低")==0)
   				    			desHtml.addString(minprice);
   				    		if(st1.getKeyAt(i2).compareTo("成交量")==0)
                  {
                    double dValue=0;
                    try{
                      dValue=Double.valueOf (value).doubleValue ();
                    }catch(Exception e){
                       dValue=0;
                    }
                    dValue=dValue/100;
   				    			desHtml.addString(dValue+"");
                    }
   				    	}
   				    	desHtml.addString(st1.getEndString());
   				    }
					DB.close ();
				}catch(Exception ex){
					DB.close();
				}
	   	    }

			if(st0.getKeyAt(i1).compareTo("info")==0)
			{
				DBOperater DB = new DBOperater ("stock");
				String queryString="";
				queryString+="SELECT zq_quben FROM ZQ_LZS_INFO WHERE zqid = '"+sZqID+"'";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					if(rs!=null&&rs.next())
					{
						String sTmp=rs.getString(1);
						desHtml.addString(sTmp);
					}
				}catch(Exception ex){
					DB.close();
				}
				DB.close();
			}

			if(st0.getKeyAt(i1).compareTo("收益")==0)
			{
				DBOperater DB = new DBOperater ("stock");
				String queryString="";
				queryString+="SELECT date, shouyi FROM ZQ_LZS_SHOUYI WHERE zqid = '"+sZqID+"'";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					while(rs!=null&&rs.next())
					{
						String sTmp1=makeDate(rs.getString(1));
						String sTmp2=rs.getString(2);
						desHtml.addString(sTmp1);
						desHtml.addString(sTmp2);
					}
				}catch(Exception ex){
					DB.close();
				}
				DB.close();
			}
			
			if(st0.getKeyAt(i1).compareTo("分配")==0)
			{
				DBOperater DB = new DBOperater ("stock");
				String queryString="";
				queryString+="SELECT date, fenpei FROM ZQ_LZS_FENPEI WHERE zqid = '"+sZqID+"'";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					while(rs!=null&&rs.next())
					{
						String sTmp1=makeDate(rs.getString(1));
						String sTmp2=rs.getString(2);
						desHtml.addString(sTmp1);
						desHtml.addString(sTmp2);
					}
				}catch(Exception ex){
					DB.close();
				}
				DB.close();
			}
					
			if(st0.getKeyAt(i1).compareTo("公告")==0)
			{
				DBOperater DB = new DBOperater ("stock");
				String queryString="";
				queryString+="SELECT date, info FROM ZQ_LZS_GGAO WHERE zqid = '"+sZqID+"' ORDER BY nindex";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					while(rs!=null&&rs.next())
					{
						String sTmp1=rs.getString(1)+"<br>";
						String sTmp2=rs.getString(2);
						//desHtml.addString(sTmp1);
						desHtml.addStringPlain (sTmp2);
						desHtml.addString("<br>");
					}
				}catch(Exception ex){
					DB.close();
				}
				DB.close();
			}
			
			if(st0.getKeyAt(i1).compareTo("动态")==0)
			{
				DBOperater DB = new DBOperater ("stock");
				String queryString="";
				queryString+="SELECT date, info FROM ZQ_LZS_DTAI WHERE zqid = '"+sZqID+"' ORDER BY nindex";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					while(rs!=null&&rs.next())
					{
						String sTmp1=rs.getString(1)+"<br>";
						String sTmp2=rs.getString(2);
						//desHtml.addString(sTmp1);
						desHtml.addStringPlain (sTmp2);
						desHtml.addString("<br>");
					}
				}catch(Exception ex){
					DB.close();
				}
				DB.close();
			}
			 if ((st0.getKeyAt (i1).compareTo ("时间")==0)&&(sTime.length ()!=0))
      {

         	desHtml.addString(sTime);
      }
			if(st0.getKeyAt(i1).compareTo("点评")==0)
			{
				DBOperater DB = new DBOperater ("stock");
				String queryString="";
				queryString+="SELECT ADVISOR , REVIEW , UPDATETIME FROM SM_GGDP WHERE GPCODE = '"+sZqID+"'";
				ResultSet rs;
	   			rs = DB.executeQuery(queryString);
				try
				{
					while(rs!=null&&rs.next())
					{
						String sTmp1=rs.getString(1);
						String sTmp2=rs.getString(2);
						String sTmp3=rs.getString(3);
						desHtml.addString(sTmp1+":");
						desHtml.addString(sTmp2+" ");
						desHtml.addString(sTmp3);
					}
				}catch(Exception ex){
					DB.close();
				}
				DB.close();
			}		
		}
		desHtml.addString(st0.getEndString());
	}
	
	//一个把形如199901、199902变成1999年上半年、下半年的函数:
	public String makeDate(String sTmp)
	{
		return "";
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -