專利名稱:一種動(dòng)態(tài)可擴(kuò)展的web界面的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及軟件開發(fā),具體來說,涉及一種動(dòng)態(tài)可擴(kuò)展的web界面的方法。
背景技術(shù):
隨著軟件開發(fā)規(guī)模的增大,為更好的便于系統(tǒng)設(shè)計(jì)開發(fā),通常需將軟件劃分為不同的模塊,以便開發(fā)人員對不同的模塊進(jìn)行設(shè)計(jì)編碼,以提高并行開發(fā)的效率;以模塊化思想為主導(dǎo)的開發(fā)方式使得軟件開發(fā)人員按模塊對軟件進(jìn)行開發(fā),但傳統(tǒng)的開發(fā)方式,模塊的劃分僅是邏輯層次上的劃分,開發(fā)人員任然需要在同一個(gè)工程中開發(fā)各自的模塊,軟件最終部署時(shí)也是將不同的模塊合成一個(gè)安裝包進(jìn)行安裝,此種方式使得當(dāng)系統(tǒng)需要修改或增加新的功能時(shí),均需在原有開發(fā)工程中進(jìn)行代碼的修改,并重新部署新的安裝包,從而使得軟件無法實(shí)現(xiàn)動(dòng)態(tài)可擴(kuò)展的功能。
發(fā)明內(nèi)容
本發(fā)明基于模塊化的思想,實(shí)現(xiàn)了一種動(dòng)態(tài)可擴(kuò)展的web界面軟件架構(gòu)開發(fā)方法,允許開發(fā)人員將不同的模塊作為獨(dú)立的工程進(jìn)行開發(fā),當(dāng)系統(tǒng)安裝部署時(shí),不同的模塊可作為獨(dú)立的安裝包部署到系統(tǒng)上,可在系統(tǒng)服務(wù)不停止的條件下,動(dòng)態(tài)的更新或增加新的模塊;并以擴(kuò)展點(diǎn)思想為核心,實(shí)現(xiàn)了對web界面不同頁面元素的動(dòng)態(tài)加載功能,允許系統(tǒng)在線條件下實(shí)現(xiàn)新的web界面的增加。一種動(dòng)態(tài)可擴(kuò)展的web界面的方法,所述方法依據(jù)模塊化思想,將軟件架構(gòu)劃分為模塊和核心平臺(tái);將需動(dòng)態(tài)加載的web元素,javascript文件、ess文件、多語化文件定義為擴(kuò)展點(diǎn), 定義系統(tǒng)內(nèi)部的擴(kuò)展點(diǎn)機(jī)制,當(dāng)模塊安裝擴(kuò)展點(diǎn)規(guī)范進(jìn)行設(shè)計(jì)編碼,核心平臺(tái)即可將模塊中的擴(kuò)展點(diǎn)元素進(jìn)行統(tǒng)一的管理,并集中加載到web頁面。優(yōu)選的,所述模塊為根據(jù)應(yīng)用軟件的特點(diǎn)將軟件劃分的邏輯單元,開發(fā)人員以模塊為基本單元進(jìn)行設(shè)計(jì)與開發(fā);所述核心平臺(tái)為模塊運(yùn)行的基礎(chǔ)平臺(tái),所有模塊均受核心
平臺(tái)的統(tǒng)一管理與調(diào)度;所述核心平臺(tái)為模塊提供了運(yùn)行的環(huán)境,在核心平臺(tái)運(yùn)行后,核心平臺(tái)可以將系統(tǒng)中所有的模塊啟動(dòng)并運(yùn)行;所述模塊的狀態(tài)包括installed,resolved, uninstalle, active狀態(tài),允許在不停止核心平臺(tái)和模塊的基礎(chǔ)上,動(dòng)態(tài)的對模塊進(jìn)行卸載、更新操作。優(yōu)選的,所述擴(kuò)展點(diǎn)存在唯一的標(biāo)識(shí)擴(kuò)展點(diǎn)ID,擴(kuò)展點(diǎn)ID使用小寫字母,如果存在多個(gè)單詞,直接進(jìn)行連接;所述擴(kuò)展點(diǎn)信息存儲(chǔ)到每個(gè)模塊的實(shí)現(xiàn)Bundle的META-INF目錄下,結(jié)構(gòu)為gridview/+[擴(kuò)展點(diǎn)ID]+/*. properties,Properties文件內(nèi)容包括擴(kuò)展點(diǎn)的具體描述,其內(nèi)容結(jié)構(gòu)由擴(kuò)展點(diǎn)定義方提出約定,擴(kuò)展點(diǎn)使用方依據(jù)約定進(jìn)行編寫。優(yōu)選的,所述擴(kuò)展點(diǎn)的數(shù)據(jù)結(jié)構(gòu)如下擴(kuò)展點(diǎn)的擴(kuò)展單元信息,Map:擴(kuò)展單元信息是一個(gè)擴(kuò)展點(diǎn)擴(kuò)展信息的最小存儲(chǔ)單元,用于表示模塊對某擴(kuò)展點(diǎn)的一個(gè)具體設(shè)定;Map結(jié)構(gòu),Key表示擴(kuò)展屬性名,Value表示擴(kuò)展屬性值,一個(gè)Map結(jié)構(gòu)存儲(chǔ)一個(gè)properties文件中的信息;單一擴(kuò)展點(diǎn)信息,List<Map> 擴(kuò)展單元信息的集合,列表中的每一個(gè)元素都是一個(gè)擴(kuò)展單元信息;多擴(kuò)展點(diǎn)信息,Map<String,List<Map 多擴(kuò)展點(diǎn)信息結(jié)構(gòu)由Map類型組成,其中Map的Key使用擴(kuò)展點(diǎn)的ID表示,Map的Value就是單一擴(kuò)展點(diǎn)信息結(jié)構(gòu)。優(yōu)選的,所述核心平臺(tái)將根據(jù)擴(kuò)展點(diǎn)機(jī)制,動(dòng)態(tài)的從系統(tǒng)中加載所需頁面元素;當(dāng)用戶登錄頁面后,核心平臺(tái)將查詢系統(tǒng)中所有狀態(tài)為“active”的模塊,并根據(jù)擴(kuò)展點(diǎn)規(guī)范獲取滿足規(guī)范要求的頁面元素配置,并統(tǒng)一在頁面加載。優(yōu)選的,所述擴(kuò)展點(diǎn)的后臺(tái)工作流程為1、頁面集成子系統(tǒng)通過擴(kuò)展點(diǎn)查詢接口從模塊管理子系統(tǒng)獲取所需要的所有獨(dú)立子系統(tǒng)擴(kuò)展點(diǎn)信息;2、遍歷獲取的擴(kuò)展點(diǎn)信息,通過paraentID信息確定菜單的層次結(jié)構(gòu),并依據(jù)此層次結(jié)構(gòu)重新組織擴(kuò)展點(diǎn)信息;3、在依據(jù)層次結(jié)構(gòu)組織擴(kuò)展點(diǎn)信息的過程中,依據(jù)menuld組織菜單的順序,之后前臺(tái)將不會(huì)對菜單順序進(jìn)行排序;4、按層次結(jié)構(gòu)組織好的擴(kuò)展點(diǎn)信息,最終形成以擴(kuò)展點(diǎn)名稱為KEY的MAP結(jié)構(gòu)。優(yōu)選的,所述擴(kuò)展點(diǎn)的前臺(tái)工作流程為1、mainpage主頁面在加載完畢后,向后臺(tái)發(fā)送請求獲取所有擴(kuò)展點(diǎn)的信息,并用全局變量加以存儲(chǔ);2、mainpage主頁面從全局變量的擴(kuò)展點(diǎn)信息數(shù)據(jù)結(jié)構(gòu)中讀取所需擴(kuò)展點(diǎn)的信息, 如讀取功能菜單的描述信息,并以此組織生產(chǎn)頁面元素;3、當(dāng)其他頁面在動(dòng)態(tài)生成頁面時(shí),均從全局變量的擴(kuò)展點(diǎn)信息數(shù)據(jù)結(jié)構(gòu)中獲取所
需fe息。優(yōu)選的,所述擴(kuò)展點(diǎn)的鑒權(quán)流程為1、擴(kuò)展點(diǎn)描述文件中增加userRole配置,取值范圍為Admin,User ;2、在讀取擴(kuò)展點(diǎn)信息時(shí),首先從session中獲取用戶登錄選擇是獨(dú)立子系統(tǒng)還是默認(rèn)方式,如是默認(rèn)方式,則讀取所有系統(tǒng)的擴(kuò)展點(diǎn)信息;如是獨(dú)立子系統(tǒng),則獲取給定獨(dú)立子系統(tǒng)的擴(kuò)展點(diǎn)信息;3、頁面集成子系統(tǒng)從License管理模塊獲取當(dāng)前License信息,根據(jù)配置項(xiàng)的ID 和有效時(shí)間是否在License范圍內(nèi)確定配置項(xiàng)是否disable ;4、頁面集成子系統(tǒng)讀取擴(kuò)展點(diǎn)信息后,從session中獲取當(dāng)前用戶的角色,根據(jù)登錄用戶的角色確定配置項(xiàng)是否disable ;5、將擴(kuò)展點(diǎn)信息組織成前臺(tái)需要的數(shù)據(jù)返回給前臺(tái),前臺(tái)根據(jù)disable屬性決定菜單是否被禁用;6、同時(shí)將用戶信息和擴(kuò)展點(diǎn)信息一起傳到前臺(tái),通過javascript全局變量存儲(chǔ)以供各子系統(tǒng)使用。本發(fā)明實(shí)現(xiàn)了 web界面的模塊化開發(fā)架構(gòu),在線動(dòng)態(tài)可擴(kuò)展的軟件架構(gòu)以及軟件層面對web界面的即插即用熱插拔機(jī)制。
圖1是本發(fā)明的軟件架構(gòu)圖2是本發(fā)明的模塊狀態(tài)轉(zhuǎn)換圖
具體實(shí)施例方式軟件基礎(chǔ)架構(gòu)主要包括核心平臺(tái)和模塊兩個(gè)層次,模塊為根據(jù)應(yīng)用軟件的特點(diǎn)將軟件劃分的邏輯單元,開發(fā)人員以模塊為基本單元進(jìn)行設(shè)計(jì)與開發(fā);核心平臺(tái)為模塊運(yùn)行的基礎(chǔ)平臺(tái),所有模塊均受核心平臺(tái)的統(tǒng)一管理與調(diào)度;核心平臺(tái)為模塊提供了運(yùn)行的環(huán)境,在核心平臺(tái)運(yùn)行后,核心平臺(tái)可以將系統(tǒng)中所有的模塊啟動(dòng)并運(yùn)行;模塊的狀態(tài)包括installed,resolved, uninstalle, active等狀態(tài),允許在不停止核心平臺(tái)和模塊的基礎(chǔ)上,動(dòng)態(tài)的對模塊進(jìn)行卸載、更新等操作,從而保證了軟件系統(tǒng)的動(dòng)態(tài)可擴(kuò)展性;Web界面動(dòng)態(tài)可擴(kuò)展機(jī)制本發(fā)明基于模塊化平臺(tái)的架構(gòu),實(shí)現(xiàn)了對web界面的動(dòng)態(tài)可擴(kuò)展功能,web界面從功能上通常用戶在登錄主界面后,需通過點(diǎn)擊菜單或按鈕進(jìn)入相應(yīng)的頁面,本發(fā)明實(shí)現(xiàn)了根據(jù)動(dòng)態(tài)加載的模塊,實(shí)時(shí)展現(xiàn)入口菜單,從而實(shí)現(xiàn)了 web界面的擴(kuò)展;從web界面實(shí)現(xiàn)的角度,本發(fā)明實(shí)現(xiàn)動(dòng)態(tài)加載javascript文件、ess文件、多語化文件等功能,從而保證web界面的擴(kuò)展;擴(kuò)展點(diǎn)機(jī)制本發(fā)明將需動(dòng)態(tài)加載的web元素,javascript文件、ess文件、多語化文件等均定義為擴(kuò)展點(diǎn),定義系統(tǒng)內(nèi)部的擴(kuò)展點(diǎn)機(jī)制,當(dāng)模塊安裝擴(kuò)展點(diǎn)規(guī)范進(jìn)行設(shè)計(jì)編碼,核心平臺(tái)即可將模塊中的擴(kuò)展點(diǎn)元素進(jìn)行統(tǒng)一的管理,并集中加載到web頁面;擴(kuò)展點(diǎn)是核心平臺(tái)提供的一種頁面擴(kuò)展和功能擴(kuò)展的方式。擴(kuò)展點(diǎn)規(guī)約擴(kuò)展點(diǎn)ID規(guī)約擴(kuò)展點(diǎn)需要存在唯一的標(biāo)識(shí),即擴(kuò)展點(diǎn)ID。擴(kuò)展點(diǎn)ID使用小寫字母,如果存在多個(gè)單詞,直接進(jìn)行連接。擴(kuò)展點(diǎn)存儲(chǔ)擴(kuò)展點(diǎn)信息存儲(chǔ)到每個(gè)模塊的實(shí)現(xiàn)Bundle的META-INF目錄下,結(jié)構(gòu)為 gridview/+[擴(kuò)展點(diǎn)ID]+/*, properties。例如頁面集成子系統(tǒng)的子系統(tǒng)菜單項(xiàng)擴(kuò)展點(diǎn),其標(biāo)識(shí)為 mainmenu,貝[I擴(kuò)展點(diǎn)信息存儲(chǔ)在 META—INF/gridview/mainmenu/*· properties。Properties 文件內(nèi)容一個(gè)properties文件的內(nèi)容是一個(gè)擴(kuò)展點(diǎn)的具體描述,其內(nèi)容結(jié)構(gòu)由擴(kuò)展點(diǎn)定義方提出約定,擴(kuò)展點(diǎn)使用方依據(jù)約定進(jìn)行編寫。數(shù)據(jù)結(jié)構(gòu)擴(kuò)展點(diǎn)的擴(kuò)展單元信息Map 擴(kuò)展單元信息是一個(gè)擴(kuò)展點(diǎn)擴(kuò)展信息的最小存儲(chǔ)單元,用于表示模塊對某擴(kuò)展點(diǎn)的一個(gè)具體設(shè)定。Map結(jié)構(gòu),Key表示擴(kuò)展屬性名,Value表示擴(kuò)展屬性值,一個(gè)Map結(jié)構(gòu)存儲(chǔ)一個(gè)properties文件中的信息。單一擴(kuò)展點(diǎn)信息List<Map>:擴(kuò)展單元信息的集合,列表中的每一個(gè)元素都是一個(gè)擴(kuò)展單元信息。多擴(kuò)展點(diǎn)信息Map<String,List<Map 多擴(kuò)展點(diǎn)信息結(jié)構(gòu)由Map類型組成,其中Map的Key使用擴(kuò)展點(diǎn)的ID表示,Map的Value就是單一擴(kuò)展點(diǎn)信息結(jié)構(gòu)。頁面元素動(dòng)態(tài)加載機(jī)制核心平臺(tái)將根據(jù)擴(kuò)展點(diǎn)機(jī)制,動(dòng)態(tài)的從系統(tǒng)中加載所需頁面元素;當(dāng)用戶登錄頁面后,核心平臺(tái)將查詢系統(tǒng)中所有狀態(tài)為“active”的模塊,并根據(jù)擴(kuò)展點(diǎn)規(guī)范獲取滿足規(guī)范要求的頁面元素配置,并統(tǒng)一在頁面加載,從而實(shí)現(xiàn)頁面元素的動(dòng)態(tài)加載;頁面擴(kuò)展點(diǎn)信息數(shù)據(jù)結(jié)構(gòu)1、數(shù)據(jù)結(jié)構(gòu)為Map<String,List<Map ,以擴(kuò)展點(diǎn)的名稱作為KEY,value為對應(yīng)某個(gè)擴(kuò)展點(diǎn)的信息以List組織起來的數(shù)據(jù);目前主菜單key名稱為“mainMenu”2、List中的map對應(yīng)的結(jié)構(gòu)為
權(quán)利要求
1.一種動(dòng)態(tài)可擴(kuò)展的web界面的方法,其特征在于所述方法依據(jù)模塊化思想,將軟件架構(gòu)劃分為模塊和核心平臺(tái);將需動(dòng)態(tài)加載的web元素,javascript文件、ess文件、多語化文件定義為擴(kuò)展點(diǎn),定義系統(tǒng)內(nèi)部的擴(kuò)展點(diǎn)機(jī)制,當(dāng)模塊安裝擴(kuò)展點(diǎn)規(guī)范進(jìn)行設(shè)計(jì)編碼,核心平臺(tái)即可將模塊中的擴(kuò)展點(diǎn)元素進(jìn)行統(tǒng)一的管理,并集中加載到web頁面。
2.如權(quán)利要求1所述的方法,其特征在于所述模塊為根據(jù)應(yīng)用軟件的特點(diǎn)將軟件劃分的邏輯單元,開發(fā)人員以模塊為基本單元進(jìn)行設(shè)計(jì)與開發(fā);所述核心平臺(tái)為模塊運(yùn)行的基礎(chǔ)平臺(tái),所有模塊均受核心平臺(tái)的統(tǒng)一管理與調(diào)度;所述核心平臺(tái)為模塊提供了運(yùn)行的環(huán)境,在核心平臺(tái)運(yùn)行后,核心平臺(tái)可以將系統(tǒng)中所有的模塊啟動(dòng)并運(yùn)行;所述模塊的狀態(tài)包括installed,resolved, uninstalle, active 狀態(tài),允許在不停止核心平臺(tái)和模塊的基礎(chǔ)上,動(dòng)態(tài)的對模塊進(jìn)行卸載、更新操作。
3.如權(quán)利要求1所述的方法,其特征在于所述擴(kuò)展點(diǎn)存在唯一的標(biāo)識(shí)擴(kuò)展點(diǎn)ID,擴(kuò)展點(diǎn)ID使用小寫字母,如果存在多個(gè)單詞,直接進(jìn)行連接;所述擴(kuò)展點(diǎn)信息存儲(chǔ)到每個(gè)模塊的實(shí)現(xiàn) Bundle 的 ΜΕΤΑ-1NF 目錄下,結(jié)構(gòu)為 gridview/+[擴(kuò)展點(diǎn) ID]+/*. properties, I^operties文件內(nèi)容包括擴(kuò)展點(diǎn)的具體描述,其內(nèi)容結(jié)構(gòu)由擴(kuò)展點(diǎn)定義方提出約定,擴(kuò)展點(diǎn)使用方依據(jù)約定進(jìn)行編寫。
4.如權(quán)利要求1所述的方法,其特征在于所述擴(kuò)展點(diǎn)的數(shù)據(jù)結(jié)構(gòu)如下擴(kuò)展點(diǎn)的擴(kuò)展單元信息,Map:擴(kuò)展單元信息是一個(gè)擴(kuò)展點(diǎn)擴(kuò)展信息的最小存儲(chǔ)單元,用于表示模塊對某擴(kuò)展點(diǎn)的一個(gè)具體設(shè)定;Map結(jié)構(gòu),Key表示擴(kuò)展屬性名,Value表示擴(kuò)展屬性值,一個(gè)Map結(jié)構(gòu)存儲(chǔ)一個(gè)properties文件中的信息;單一擴(kuò)展點(diǎn)信息,List<Map> 擴(kuò)展單元信息的集合,列表中的每一個(gè)元素都是一個(gè)擴(kuò)展單元信息;多擴(kuò)展點(diǎn)信息,Map<String, List<Map>> 多擴(kuò)展點(diǎn)信息結(jié)構(gòu)由Map類型組成,其中Map的Key使用擴(kuò)展點(diǎn)的ID表示,Map的Value就是單一擴(kuò)展點(diǎn)信息結(jié)構(gòu)。
5.如權(quán)利要求1所述的方法,其特征在于所述核心平臺(tái)將根據(jù)擴(kuò)展點(diǎn)機(jī)制,動(dòng)態(tài)的從系統(tǒng)中加載所需頁面元素;當(dāng)用戶登錄頁面后,核心平臺(tái)將查詢系統(tǒng)中所有狀態(tài)為 "active"的模塊,并根據(jù)擴(kuò)展點(diǎn)規(guī)范獲取滿足規(guī)范要求的頁面元素配置,并統(tǒng)一在頁面加載。
6.如權(quán)利要求1所述的方法,其特征在于所述擴(kuò)展點(diǎn)的后臺(tái)工作流程為1、頁面集成子系統(tǒng)通過擴(kuò)展點(diǎn)查詢接口從模塊管理子系統(tǒng)獲取所需要的所有獨(dú)立子系統(tǒng)擴(kuò)展點(diǎn)信息;2、遍歷獲取的擴(kuò)展點(diǎn)信息,通過paraentID信息確定菜單的層次結(jié)構(gòu),并依據(jù)此層次結(jié)構(gòu)重新組織擴(kuò)展點(diǎn)信息;3、在依據(jù)層次結(jié)構(gòu)組織擴(kuò)展點(diǎn)信息的過程中,依據(jù)menuld組織菜單的順序,之后前臺(tái)將不會(huì)對菜單順序進(jìn)行排序;4、按層次結(jié)構(gòu)組織好的擴(kuò)展點(diǎn)信息,最終形成以擴(kuò)展點(diǎn)名稱為KEY的MAP結(jié)構(gòu)。
7.如權(quán)利要求1所述的方法,其特征在于所述擴(kuò)展點(diǎn)的前臺(tái)工作流程為·1、mainpage主頁面在加載完畢后,向后臺(tái)發(fā)送請求獲取所有擴(kuò)展點(diǎn)的信息,并用全局變量加以存儲(chǔ);·2、mainpage主頁面從全局變量的擴(kuò)展點(diǎn)信息數(shù)據(jù)結(jié)構(gòu)中讀取所需擴(kuò)展點(diǎn)的信息,如讀取功能菜單的描述信息,并以此組織生產(chǎn)頁面元素;·3、當(dāng)其他頁面在動(dòng)態(tài)生成頁面時(shí),均從全局變量的擴(kuò)展點(diǎn)信息數(shù)據(jù)結(jié)構(gòu)中獲取所需信肩、ο
8.如權(quán)利要求1所述的方法,其特征在于所述擴(kuò)展點(diǎn)的鑒權(quán)流程為·1、擴(kuò)展點(diǎn)描述文件中增加userRole配置,取值范圍為Admin,User;·2、在讀取擴(kuò)展點(diǎn)信息時(shí),首先從session中獲取用戶登錄選擇是獨(dú)立子系統(tǒng)還是默認(rèn)方式,如是默認(rèn)方式,則讀取所有系統(tǒng)的擴(kuò)展點(diǎn)信息;如是獨(dú)立子系統(tǒng),則獲取給定獨(dú)立子系統(tǒng)的擴(kuò)展點(diǎn)信息;·3、頁面集成子系統(tǒng)從License管理模塊獲取當(dāng)前License信息,根據(jù)配置項(xiàng)的ID和有效時(shí)間是否在License范圍內(nèi)確定配置項(xiàng)是否disable ;·4、頁面集成子系統(tǒng)讀取擴(kuò)展點(diǎn)信息后,從session中獲取當(dāng)前用戶的角色,根據(jù)登錄用戶的角色確定配置項(xiàng)是否disable ;·5、將擴(kuò)展點(diǎn)信息組織成前臺(tái)需要的數(shù)據(jù)返回給前臺(tái),前臺(tái)根據(jù)disable屬性決定菜單是否被禁用;·6、同時(shí)將用戶信息和擴(kuò)展點(diǎn)信息一起傳到前臺(tái),通過javascript全局變量存儲(chǔ)以供各子系統(tǒng)使用。
全文摘要
本發(fā)明提供了一種動(dòng)態(tài)可擴(kuò)展的web界面的方法,所述方法依據(jù)模塊化思想,將軟件架構(gòu)劃分為模塊和核心平臺(tái);將需動(dòng)態(tài)加載的web元素,javascript文件、css文件、多語化文件定義為擴(kuò)展點(diǎn),定義系統(tǒng)內(nèi)部的擴(kuò)展點(diǎn)機(jī)制,當(dāng)模塊安裝擴(kuò)展點(diǎn)規(guī)范進(jìn)行設(shè)計(jì)編碼,核心平臺(tái)即可將模塊中的擴(kuò)展點(diǎn)元素進(jìn)行統(tǒng)一的管理,并集中加載到web頁面。本發(fā)明實(shí)現(xiàn)了web界面的模塊化開發(fā)架構(gòu),在線動(dòng)態(tài)可擴(kuò)展的軟件架構(gòu)以及軟件層面對web界面的即插即用熱插拔機(jī)制。
文檔編號(hào)G06F9/445GK102495730SQ20111039736
公開日2012年6月13日 申請日期2011年12月2日 優(yōu)先權(quán)日2011年12月2日
發(fā)明者孫國忠, 溫鑫, 趙歡, 邵宗有, 郭慶 申請人:曙光信息產(chǎn)業(yè)(北京)有限公司