public void UpdateStock(int range_mode, int mode, String stock_code) throws Exception {
		log.info("start update stock price! range_mode:" + range_mode + "mode:" + mode + " stock_code:" + stock_code);
		
		stock_map.clear();
		
		//更新股票数据
		log.info("    update stocks");
		HashMap<String, String> stock_info = GetStockTransed(mode, stock_code);
		for (String code : stock_info.keySet().toArray(new String[0])) {
			String market = stock_info.get(code);
			
			log.info("    update " + code);
			
			if (range_mode == UPDATE_RT || range_mode == UPDATE_ALL) {
				//查询实时数据
				QueryStockRT(market, code);
			}
			if (range_mode == UPDATE_HIS || range_mode == UPDATE_ALL) {
				//查询历史数据
				QueryStockHistoryPrice(market, code);
			}
			
			//存入数据库
			log.info("    store " + code + " to db");
			StoreStockPriceToDB(code, false);
		}
		
		//更新大盘数据
		log.info("    update dapan");
		if (range_mode == UPDATE_RT || range_mode == UPDATE_ALL) {
			//查询实时数据
			QueryStockRT(TransDetailRecord.MARKET_SH, CODE_SZZS);
			QueryStockRT(TransDetailRecord.MARKET_SZ, CODE_SZCZ);
		}
		
		if (range_mode == UPDATE_HIS || range_mode == UPDATE_ALL) {
			//查询历史数据
			QueryStockHistoryPrice(TransDetailRecord.MARKET_SH, CODE_SZZS);
			QueryStockHistoryPrice(TransDetailRecord.MARKET_SZ, CODE_SZCZ);
		}
		
		//存入数据库
		log.info("    store dapan to db");
		StoreStockPriceToDB(CODE_SZZS, false);
		StoreStockPriceToDB(CODE_SZCZ, false);
	}