999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于J2EE的電力市場(chǎng)交易運(yùn)營(yíng)系統(tǒng)

2008-12-31 00:00:00徐步云
電腦知識(shí)與技術(shù) 2008年12期

摘要:電力市場(chǎng)運(yùn)營(yíng)系統(tǒng)是為了適應(yīng)我國(guó)電力市場(chǎng)化改革的需要,部署在電力調(diào)度(交易)中心的一套自動(dòng)化系統(tǒng),本文介紹該系統(tǒng)的信息發(fā)布與數(shù)據(jù)申報(bào)子系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)與運(yùn)用到的關(guān)鍵技術(shù)。

關(guān)鍵詞:J2EE;JSP;Ajax;Struts;Oracle

中圖分類(lèi)號(hào):TP309.05文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2008)12-20ppp-0c

Power Market Operation System Based on J2EE: Design adn Implementation of Data Process Subsystem adn Information Publieshing Subsystem

XU Bu-yun

(College of Software Engineering, Southeast University, Nanjing 210096,China)

Abstract:Power Market Operation System is an automatic system deploying at state grid. It meet the demand of the Chinese power market. This paper describes the design and implementation of data process subsystem and information publishing subsystem and the relative key technologies.

Key words:J2EE;JSP;Ajax;Struts;Oracle

1 引言

電力市場(chǎng)運(yùn)營(yíng)系統(tǒng)是為了適應(yīng)我國(guó)電力市場(chǎng)化改革的需要,部署在電力調(diào)度(交易)中心的一套自動(dòng)化系統(tǒng),實(shí)現(xiàn)電力市場(chǎng)運(yùn)營(yíng)規(guī)則所要求的有關(guān)電力交易的各項(xiàng)業(yè)務(wù),為電力市場(chǎng)中的報(bào)價(jià)、交易、結(jié)算、信息發(fā)布等提供技術(shù)支持。根據(jù)國(guó)家電力體制改革目標(biāo)和國(guó)家電網(wǎng)公司的電力發(fā)展規(guī)劃要求,適合國(guó)情的統(tǒng)一開(kāi)放電力市場(chǎng)體系建設(shè)已經(jīng)到來(lái)。三級(jí)電力市場(chǎng)交易應(yīng)用平臺(tái)研究成果將對(duì)我國(guó)三級(jí)電力市場(chǎng)的交易運(yùn)營(yíng)、仿真培訓(xùn)、分析評(píng)估與輔助決策等電力市場(chǎng)應(yīng)用建設(shè)具有十分重要的理論價(jià)值和指導(dǎo)作用。開(kāi)發(fā)的原型系統(tǒng)將可直接應(yīng)用到包括國(guó)家、區(qū)域和省等各級(jí)電力交易中心,用于電力市場(chǎng)交易運(yùn)營(yíng),并創(chuàng)造巨大的經(jīng)濟(jì)效益和社會(huì)效益。系統(tǒng)在設(shè)計(jì)上具有先進(jìn)性、使用性、開(kāi)放性等優(yōu)點(diǎn)先進(jìn)性。

因此,本項(xiàng)目的研究和開(kāi)發(fā)成果具有非常廣闊的應(yīng)用前景。

2 系統(tǒng)設(shè)計(jì)

2.1 系統(tǒng)結(jié)構(gòu)

本課題所屬的功能模塊(見(jiàn)圖1):

(1)數(shù)據(jù)申報(bào):數(shù)據(jù)申報(bào)主要完成電力市場(chǎng)數(shù)據(jù)申報(bào)接收與處理,它是市場(chǎng)成員參與各類(lèi)市場(chǎng)交易,提交交易申請(qǐng)的數(shù)據(jù)提交工具;也是交易中心向市場(chǎng)成員收集各類(lèi)市場(chǎng)信息,用于分析市場(chǎng)運(yùn)行狀況和預(yù)測(cè)市場(chǎng)走勢(shì)的數(shù)據(jù)收集工具。數(shù)據(jù)申報(bào)功能的服務(wù)對(duì)象為參與市場(chǎng)競(jìng)爭(zhēng)和市場(chǎng)管理的各市場(chǎng)成員。數(shù)據(jù)申報(bào)主要功能包括注冊(cè)數(shù)據(jù)申報(bào)、交易數(shù)據(jù)申報(bào)和運(yùn)營(yíng)數(shù)據(jù)申報(bào)三部分。

為了保證數(shù)據(jù)申報(bào)的正確性,有必要對(duì)申報(bào)數(shù)據(jù)進(jìn)行有效性校驗(yàn)、處理保存和確認(rèn);應(yīng)根據(jù)市場(chǎng)規(guī)則,提供申報(bào)數(shù)據(jù)查詢功能;系統(tǒng)應(yīng)采用安全保護(hù)措施,具備完善的身份認(rèn)證和數(shù)據(jù)加密傳輸機(jī)制,確保申報(bào)數(shù)據(jù)的安全、保密和防篡改。

數(shù)據(jù)申報(bào)服務(wù)接收到市場(chǎng)成員的申報(bào)數(shù)據(jù),并通過(guò)有效性校驗(yàn)后,及時(shí)將申報(bào)數(shù)據(jù)傳送到交易管理、結(jié)算管理、市場(chǎng)分析和信息發(fā)布各個(gè)模塊,參與市場(chǎng)應(yīng)用計(jì)算。

(2)信息發(fā)布:信息發(fā)布子系統(tǒng)是各市場(chǎng)成員及時(shí)了解市場(chǎng)、開(kāi)展競(jìng)價(jià)決策的主要數(shù)據(jù)來(lái)源。發(fā)布信息內(nèi)容包括市場(chǎng)注冊(cè)信息、交易申報(bào)信息、交易計(jì)劃信息、結(jié)算考核信息、電網(wǎng)運(yùn)行和市場(chǎng)運(yùn)行信息。

系統(tǒng)主要完成各類(lèi)運(yùn)行數(shù)據(jù)和市場(chǎng)信息的發(fā)布、存檔、檢索及處理,使所有市場(chǎng)參與者能夠及時(shí)、平等地訪問(wèn)相關(guān)的市場(chǎng)信息,保證電力市場(chǎng)的公開(kāi)、公平、公正。信息發(fā)布工作遵循市場(chǎng)交易規(guī)則,有序開(kāi)展市場(chǎng)交易,及時(shí)披露交易信息,依法接受政府監(jiān)管。

2.2 體系架構(gòu)

本系統(tǒng)以O(shè)racle 10g數(shù)據(jù)庫(kù)為底層數(shù)據(jù)支撐,在J2EE體系架構(gòu)下,基于Ajax+Struts的分布式應(yīng)用的Web客戶端。所采用的技術(shù)雖然不是Web應(yīng)用開(kāi)發(fā)領(lǐng)域最前沿的新技術(shù),但卻是最成熟的技術(shù)。整套框架的穩(wěn)定性、低成本以及可拓展性都是經(jīng)歷過(guò)考驗(yàn)的。

采用Web Services、XML技術(shù)實(shí)現(xiàn)市場(chǎng)成員與系統(tǒng)在松散耦合的情況下無(wú)縫連接,數(shù)據(jù)交換與平臺(tái)無(wú)關(guān)。

(1)界面處理子層

該層主要負(fù)責(zé):第一,接收從客戶服務(wù)層發(fā)來(lái)的查詢請(qǐng)求;第二,將查詢結(jié)果轉(zhuǎn)化為Html 頁(yè)面形式返回給客戶。在接收查詢請(qǐng)求時(shí),查詢和發(fā)布為主,不存在更新和插入操作。客戶服務(wù)層與應(yīng)用邏輯層之間的參數(shù)傳遞比較少,主要是查詢條件參數(shù)和顯示方式參數(shù)。這樣的表示層以靜態(tài)頁(yè)面為主。因此在表示層中沒(méi)有采用Java Servlet 接收客戶參數(shù),取而代之的是直接用JSP(JavaServer Page) 來(lái)接收HTTP 請(qǐng)求,這樣可以達(dá)到編寫(xiě)方便、快速的目的。

(2)應(yīng)用處理子層

該層主要負(fù)責(zé):第一,把從表示層傳來(lái)的查詢參數(shù),經(jīng)過(guò)邏輯加工,形成適當(dāng)?shù)腟QL 語(yǔ)句,再交給數(shù)據(jù)庫(kù)操作層處理;第二,將得到的結(jié)果集進(jìn)行篩選和存儲(chǔ),為數(shù)據(jù)顯示做準(zhǔn)備。在這一層中的各種查詢方法和藥品對(duì)象,用Java Bean 進(jìn)行抽象和封裝,既實(shí)現(xiàn)了面向?qū)ο螅謱?shí)現(xiàn)了模塊化。

(3)數(shù)據(jù)庫(kù)訪問(wèn)子層

該層封裝了數(shù)據(jù)庫(kù)的基本操作,包括數(shù)據(jù)庫(kù)打開(kāi),發(fā)送SQL語(yǔ)句,數(shù)據(jù)庫(kù)關(guān)閉。

2.3 開(kāi)發(fā)環(huán)境

運(yùn)用SUN公司的解決方案,使用J2EE(Struts、EJB、Hibernate)+ Oracle+ WebLogic+ JavaScript。.

3 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)

(1)運(yùn)用Ajax技術(shù)的異步操作優(yōu)點(diǎn)解決服務(wù)器于客戶端頁(yè)面響應(yīng)慢的問(wèn)題。從客戶端發(fā)出請(qǐng)求中的參數(shù)得到上下文數(shù)據(jù),并創(chuàng)建個(gè)性化的響應(yīng)。服務(wù)器使用Servlet獲取請(qǐng)求中包含的參數(shù),進(jìn)行一定處理后發(fā)送給Ajax引擎,Ajax引擎對(duì)獲取的數(shù)據(jù)進(jìn)行處理后發(fā)送到客戶端顯示。此時(shí),客戶端完全不用刷新,只需進(jìn)行局部刷新(見(jiàn)圖2)。

(2)利用Java特有的反射機(jī)制,在運(yùn)行期識(shí)別對(duì)象和類(lèi),實(shí)現(xiàn)服務(wù)器端動(dòng)態(tài)處理響應(yīng)。Java語(yǔ)言并不是一開(kāi)始執(zhí)行就被完全加載的,這與許多傳統(tǒng)語(yǔ)言有區(qū)別。當(dāng)你不知道某個(gè)對(duì)象的確切類(lèi)型,但這個(gè)類(lèi)型在編譯期已知,可以使用RTTI(run time type identification) 識(shí)別它。利用該技術(shù),我們可以將所有頁(yè)面初始化的公用函數(shù)寫(xiě)到同一個(gè)類(lèi)中,使用時(shí)可以方便的調(diào)用,提高可重用性。

(3)運(yùn)用SAX(Simple API for XML)、DOM(Document Object Model)、JDOM、DOM4J解析和操作XML文檔,作為數(shù)據(jù)傳輸?shù)拿浇椤T贏jax中可以使用XMLHttpRequest對(duì)象的requestXML方法返回XML格式的文本。

4 研究方向及實(shí)施方案

4.1 研究方向

對(duì)于傳統(tǒng)的Web應(yīng)用模型,大部分界面上的用戶動(dòng)作都會(huì)觸發(fā)一個(gè)連接到Web服務(wù)器的HTTP請(qǐng)求。服務(wù)器完成一些處理,例如接收數(shù)據(jù)、處理計(jì)算、再訪問(wèn)其他的數(shù)據(jù)庫(kù)系統(tǒng),最后返回一個(gè)HTML頁(yè)面到客戶端。在服務(wù)器處理自己的事情的時(shí)候,用戶只能等待,用戶得動(dòng)作總是與服務(wù)器得“思考時(shí)間”同步。

在Ajax模型中,在會(huì)話的開(kāi)始,瀏覽器加載了一個(gè)Ajax引擎:采用JavaScript編寫(xiě)并且通常在一個(gè)隱藏的框架中。在用戶單擊按鈕時(shí),使用JavaScript和DHTML立即更新用戶界面,并向服務(wù)器發(fā)送異步請(qǐng)求,以執(zhí)行更新或查詢數(shù)據(jù)庫(kù)。當(dāng)請(qǐng)求返回時(shí),就可以使用JavaScript和CSS來(lái)相應(yīng)地更新用戶界面而不是刷新整個(gè)頁(yè)面。這樣Web站點(diǎn)看起來(lái)時(shí)即時(shí)響應(yīng)的。

所以用戶不用再打開(kāi)一個(gè)空白窗口,等待通信。用戶登錄時(shí),就會(huì)從Web服務(wù)器下載大量的Javascript代碼。這些代碼會(huì)在整個(gè)會(huì)話的生命周期發(fā)揮作用,它會(huì)與用戶交互。

本課題是基于J2EE的Web客戶端的開(kāi)發(fā),原有大部分的頁(yè)面均采取JSP結(jié)合Struts框架的Action以及FormBean的開(kāi)發(fā)方式。該方法在系統(tǒng)規(guī)模極為龐大的情況下會(huì)造成很多重復(fù)代碼的冗余,配置文件極為龐大,維護(hù)困難。因此,本課題基于Ajax技術(shù)提出一種改良的數(shù)據(jù)查詢及提交方式來(lái)開(kāi)發(fā)JSP頁(yè)面,盡量少使用JavaScript代碼,利用統(tǒng)一的Servlet接收客戶端請(qǐng)求,在服務(wù)器端處理后將請(qǐng)求結(jié)果返回給客戶端。

4.2 實(shí)施方案

1.查詢方式:

(1)確定的數(shù)據(jù)查詢語(yǔ)句;

var querystr = 'substitutedInit|tradeseqId:100008000000015';

上面的查詢語(yǔ)句以符號(hào)“|”為各個(gè)查詢的詳細(xì)信息間隔; “substitutedInit”標(biāo)志該查詢所要調(diào)用的業(yè)務(wù)層的函數(shù)名;“tradeseqId:100008000000015”為查詢數(shù)據(jù)的過(guò)濾條件,相當(dāng)于標(biāo)準(zhǔn)SQL語(yǔ)句中的where子句;是要傳遞給業(yè)務(wù)層的查詢參數(shù);

(2)在項(xiàng)目的通用JavaScript文件添加解析數(shù)據(jù)查詢語(yǔ)句的函數(shù),解析數(shù)據(jù)查詢語(yǔ)句并生成相應(yīng)的查詢語(yǔ)句的xml描述信息;

(3)在項(xiàng)目中的通用JavaScript文件中添加Ajax異步請(qǐng)求的函數(shù),發(fā)送請(qǐng)求并提交數(shù)據(jù)查詢的xml描述信息,將查詢數(shù)據(jù)的xml描述信息發(fā)送到服務(wù)器;

(4)服務(wù)器端Servlet接受數(shù)據(jù)查詢語(yǔ)句并生成相應(yīng)的Document對(duì)象;

(5)利用Java的反射機(jī)制動(dòng)態(tài)處理請(qǐng)求;

(6)將xml格式的查詢結(jié)果信息返回客戶端,解析并將相應(yīng)的數(shù)據(jù)填入控件中。

2.數(shù)據(jù)提交:

(1)確定通用數(shù)據(jù)操作類(lèi)中的方法;

通用數(shù)據(jù)提交操作的類(lèi)類(lèi)包含對(duì)各種數(shù)據(jù)提交的方法。以year_trade_bi.jsp頁(yè)面為例,其中包含數(shù)據(jù)提交的功能。我們?cè)贒ataCommit類(lèi)中添加doYearTrade方法,該方法包含一個(gè)參數(shù)xmlStr(String類(lèi)型),參數(shù)為數(shù)據(jù)提交中涉及到的各個(gè)字段的xml格式描述信息。該方法返回一個(gè)描述數(shù)據(jù)提交操作的結(jié)果信息(數(shù)據(jù)提交成功或數(shù)據(jù)提交失敗),并在服務(wù)器端返回給用戶以表明數(shù)據(jù)提交操作是否成功。doYearTrade方法中具體的數(shù)據(jù)提交操作由開(kāi)發(fā)者根據(jù)業(yè)務(wù)要求而確定。

(2)頁(yè)面發(fā)送數(shù)據(jù)提交請(qǐng)求;

(3)發(fā)送數(shù)據(jù)提交的具體數(shù)據(jù)信息;

(4)服務(wù)器端接受數(shù)據(jù)提交的xml參數(shù)描述并確定數(shù)據(jù)提交調(diào)用的方法。

5 結(jié)束語(yǔ)

系統(tǒng)經(jīng)過(guò)立項(xiàng)、需求分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)開(kāi)發(fā)、測(cè)試以及現(xiàn)場(chǎng)安裝,調(diào)試并且根據(jù)用戶需求變化修改程序等一系列過(guò)程后,立時(shí)一年多時(shí)間,已經(jīng)初步建立了一個(gè)全國(guó)15個(gè)網(wǎng)省公司普遍需要的標(biāo)準(zhǔn)版本,目前該系統(tǒng)在湖北、山西、浙江等多個(gè)省已經(jīng)投入運(yùn)行。系統(tǒng)具有先進(jìn)性、使用性、開(kāi)放性等優(yōu)點(diǎn)先進(jìn)性。

參考文獻(xiàn):

[1] Ted Husted, Cedric Dumoulin,George Franciscus.Struts in Action[M].Manning Publications November 2002.

[2] 楊爭(zhēng)林,沈利華,胡俊.電力市場(chǎng)技術(shù)支持系統(tǒng)主站的三層體系方案[J]電力系統(tǒng)自動(dòng)化,2004(02).

[3] Flanagan.JavaScript權(quán)威指南 [M].機(jī)械工業(yè)出版社,2003.

收稿日期:2008-03-27

作者簡(jiǎn)介:徐步云(1983-),男,江蘇蘇州人,碩士研究生,研究方向:軟件工程。

主站蜘蛛池模板: 亚洲精品在线观看91| 成人无码区免费视频网站蜜臀| 91蝌蚪视频在线观看| 女人av社区男人的天堂| 欧美福利在线观看| 国产97公开成人免费视频| 91精品国产91欠久久久久| 日本道中文字幕久久一区| 亚洲欧美自拍一区| 国产精品2| 亚洲一级毛片在线观播放| 国产微拍一区二区三区四区| 亚洲另类色| 青青青国产视频手机| 99人妻碰碰碰久久久久禁片| 亚洲欧洲美色一区二区三区| 国产一区二区丝袜高跟鞋| 高清不卡毛片| 91麻豆国产视频| 国产男女免费完整版视频| 日韩精品久久久久久久电影蜜臀| 欧美日本激情| 国产二级毛片| 欧美在线网| 成人在线第一页| 成人免费黄色小视频| 九九视频免费看| 精品人妻无码中字系列| 秋霞午夜国产精品成人片| 就去色综合| 精品国产香蕉伊思人在线| 72种姿势欧美久久久久大黄蕉| 国产一级α片| 91福利一区二区三区| 国产成人一级| 久久99国产综合精品女同| 四虎成人免费毛片| 免费毛片a| 久久精品人人做人人爽97| 亚洲热线99精品视频| 91视频精品| 国产视频欧美| 国产va在线| 日韩欧美国产成人| 综合色在线| 欧美成人综合视频| 无码国产偷倩在线播放老年人| 九色综合伊人久久富二代| 久久久久久久久18禁秘| 婷婷亚洲综合五月天在线| 91亚洲免费| 中文字幕亚洲专区第19页| 97国产精品视频自在拍| 大学生久久香蕉国产线观看| 欧美日韩中文国产va另类| 青青久久91| 国产97公开成人免费视频| 精品无码视频在线观看| 福利姬国产精品一区在线| 高清久久精品亚洲日韩Av| 国产亚洲精品无码专| 国产对白刺激真实精品91| 91免费国产高清观看| 欧美成人一区午夜福利在线| 一级黄色片网| 午夜精品久久久久久久99热下载 | 亚洲三级片在线看| 国产超薄肉色丝袜网站| 欧美日韩专区| 国产视频欧美| www.91中文字幕| 免费看a级毛片| 国产微拍一区| 小说 亚洲 无码 精品| 色精品视频| 成人亚洲视频| 国产国产人免费视频成18| 激情五月婷婷综合网| 免费一级无码在线网站| 黄色网在线| 亚洲A∨无码精品午夜在线观看| 亚洲自偷自拍另类小说|