日韩精品无码免费一区二区三区|青青久久久国产线免观|亚洲精品久久久久久久|国精品无码一区二区三区免费视频|亚洲熟妇无码中文高清免费|99久久久国产精品免费不卡|精品贵妇一区二区三区

歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠信通企業(yè)
全國咨詢熱線:40000-63966
興邦電子,中國水控機第一品牌

聯(lián)系興邦電子

全國咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產業(yè)園

基于J2EE的校園一卡通系統(tǒng)平臺的設計與實現(xiàn)

文章出處:http://www.fang1.net 作者: 人氣: 發(fā)表時間:2011年09月08日

[文章內容簡介]:基于J2EE標準的四層體系結構以其良好的靈活性和可擴展性、可共享性、可復用性、安全性等優(yōu)點,成為建立校園一卡通系統(tǒng)平臺的最佳選擇。通過一個應用實例,闡述了開發(fā)一個基于J2EE的應用系統(tǒng)的方法。

  J2EE是SUN公司為開發(fā)企業(yè)級應用程序提供的強大的平臺,是用來簡化企業(yè)解決方案的開發(fā)、部署和管理相關的復雜問題的體系結構。在這個體系結構中,應用開發(fā)者的注意力集中在封裝商業(yè)邏輯和商業(yè)規(guī)則上,而一切與基礎結構服務相關的問題及底層分配問題都由應用程序容器或服務器來處理。作為J2EE一部分的企業(yè)Java組件(Enterprise Java Bean,EJB)是一種服務器端組件體系結構,它簡化了用Java開發(fā)企業(yè)級的分布式組件應用程序的過程。EJB被設計為支持應用程序可移植性和可重用性,這些特性適用于任何廠商的企業(yè)中間件服務。
  
  Weblogic是J2EE的純Java實現(xiàn),長期以來被認為是市場最好的J2EE工具之一。Weblogic的高性能、可靠性、跨平臺能力、多功能性、對J2EE標準的支持以及Jbuilder對Weblogic良好的支持,使得Weblogic與Jbuilder的組合成為J2EE應用開發(fā)的最佳選擇。
  
  校園一卡通的主要應用包括2大方面:①校園消費:食堂消費、機房上機、超市消費等;②身份認證:門禁、考勤系統(tǒng)、學籍管理、醫(yī)療、圖書館等。在學校的管理中,如果能開發(fā)一個系統(tǒng)使得教師和學生能夠僅僅憑一張CPU卡就能完成以上日常事務,這將大大方便師生員工以及管理者的管理。
  
  1 一卡通系統(tǒng)的開發(fā)
  
  一卡通系統(tǒng)采用EJB有以下好處:EJB服務器提供了諸如事務和安全之類中間件服務,應用開發(fā)人員只需關注于業(yè)務邏輯的實現(xiàn)而不是底層的實現(xiàn)機制;可擴展性:EJB可以根據(jù)您應用的增長而擴展,EJB服務器往往還提供了負載均衡并考慮到記錄數(shù)據(jù)的突發(fā)性、時間集中性以及對系統(tǒng)要求的穩(wěn)定性和安全性,利用CMB(容器管理Bean)來完成這項重要的任務是一個較好的選擇。
 
  1.1 EJB的基本思想
  
  EJB的實現(xiàn)是基于RMI—IIOP,其基本思想?yún)⒖磮D1,具體如下:①客戶端調用本地stub;②stub將參數(shù)整理成適合網(wǎng)絡傳輸形式;③stub通過網(wǎng)絡與Skeleton連接;④Skeleton將參數(shù)整理成適合Java的形式;⑤Skeleton調用EJB對象;⑥EJB對象完成所需的中間件服務;⑦企業(yè)Bean完成工作后以上步驟將在返回Home途中重復執(zhí)行。

EJB基本思想

圖1 EJB基本思想

  1.2 EJB的應用

  EJB 2.0規(guī)范里,Bean分為3類,分別是EntityBean(實體Bean)、Session Bean(會話Bean)和Mes—sageDrive Bean(消息驅動Bean)。

  根據(jù)EJB實例是否保存客戶端的狀態(tài),會話Bean還可分為有狀態(tài)會話Bean和無狀態(tài)會話Bean。實體Bean可分為BMP(Bean管理持久Bean)和CMP(容器管理持久Bean),兩者的區(qū)別在于數(shù)據(jù)存儲的實現(xiàn)方式。前者由Bean開發(fā)人員指定,后者則由容器自動實現(xiàn)。

  在本系統(tǒng)中,EJB模塊由1個會話Bean和2個實體Bean組成,分別為無狀態(tài)會話bean:Record—Ses,2個容器管理Bean:Schedule和CheckRecord。采用這樣的設計模式有以下好處:使用1個會話Bean作為前端可以隱藏實體Bean提供的功能,客戶端不知道您在使用實體Bean,以后可以更換為其他技術,對客戶端影響最小;與使用實體Bean相比,使用會話Bean的成本較小。本文以考勤終端子系統(tǒng)為例,闡述基于J2EE應用系統(tǒng)的方法。考勤終端子系統(tǒng)部署圖見圖2。

考勤終端子系統(tǒng)部署圖

圖2 考勤終端子系統(tǒng)部署圖

  1.3 數(shù)據(jù)庫設計

  定義考勤項目時,同一時間段,如有同一個人在不同地點需要考勤的情況,則在考勤記錄表(見表1)中設置其考勤狀態(tài)為沖突(StatusID=4);考勤項目表(見表2)要定義一些時間字段以確定師生在不同時間打卡時的狀態(tài)(遲到、早退等);師生每一次打卡僅僅在其需要考勤的時間段才有效,否則不予記錄。

  表1 考勤記錄表

  表2 考勤項目定義表

  1.4 EJB開發(fā)

  1.4.1 開發(fā)的準備工作 按照Borland的白皮書[ 《E]B Development Using Borland JBuilder 8and Oracle9i Application Server)進行Jbuilder和Weblogic的配置。新建項目指定應用服務器為Weblogic 7.0添加EJB模塊。引入數(shù)據(jù)庫模式,其中數(shù)據(jù)源名設為RecordDataSource,分別為考勤記錄表和考勤項目定義表。創(chuàng)建容器管理實體Bean,分別為Check—Record和Schedule,再添加一個無狀態(tài)會話Bean:RecordSes。在Weblogic創(chuàng)建數(shù)據(jù)源條目,包括一個數(shù)據(jù)連接池和一個事務數(shù)據(jù)源。數(shù)據(jù)源名為RecordData—Source。

  1.4.2 實體Bean的關系對于每個教師的每一個考勤項目,需要2次打卡,另外還有教師多次打卡的情況,因此,考勤項目定義表與考勤記錄表是1對多的關系,相應的,這樣的關系也映射到了兩個實體Bean上。右鍵點擊Schedule,創(chuàng)建一個關系,只需將鼠標移動到CheckRecord上就可以建立好。點擊新建的關系,然后編輯數(shù)據(jù)庫關系,將一個表中的SchedulelD和Staff1D拖到另一表中就定義好了數(shù)據(jù)庫的關系。

  1.4.3 處理自動增長字段ScheduleRecord的主鍵是自動增加的,必須要在部署描述里注明,以使得容器正確處理數(shù)據(jù)得持久化。這可以在開發(fā)工具Jbuilder里可視化地實現(xiàn)。在項目控制面板Projectpane雙擊ScheduleRecord,然后點擊Weblogic 7.XGeneral標簽,找到Automatic key generation,輸入以下信息:Generator type:SQL廣SERVER,Generatorname:SchedulelD,Key cache size:1。

  1.4.4 主要方法 客戶端需要調用會話Bean的addRecord方法來實現(xiàn)添加記錄的功能。會話Bean里的addRecord方法要做以下工作:查找合適的考勤項目,創(chuàng)建考勤記錄,根據(jù)打卡時間設定持卡人的狀態(tài)。因此,實體Bean Schedule需要一個查找合適的考勤項目的定位器方法和一個創(chuàng)建(Create)方法。在Jbuilder里添加方法,然后在查詢(Query)窗口寫上Ejb_Ql語言即可。

  1.5 客戶端

  JBuilder根據(jù)所編寫的Bean提供一個向導,幫助客戶端來測試編寫好的Bean。作為一個包裝類,只需要將這個客戶端測試類進行一些符合自己要求的改動就可以直接使用。一般需要以下步驟:實例化這個類,調用類的Create方法,調用類的方法,這個方法實現(xiàn)的是在會話Bean里編寫的方法,它們具有相同的名稱。

  2 一卡通平臺和其他平臺的集成

  2.1 基于J2EE的系統(tǒng)平臺的體系架構

  校園一卡通系統(tǒng)平臺體系架構見圖3。

校園一卡通系統(tǒng)平臺的體系架構

圖3 校園一卡通系統(tǒng)平臺的體系架構

  系統(tǒng)平臺采用J2EE標準,基于J2EE標準開發(fā)的應用可以跨平臺移植,并提供了企業(yè)計算中需要的各種服務;J2EE中多數(shù)標準定義了接口,例如JNDI,JDBC等,因此可以和許多廠商的產品配合,容易得到廣泛支持;J2EE樹立了一個廣泛而通用的標準,大大簡化了應用開發(fā)和部署過程。操作系統(tǒng)可以使用基于MS Windows或者UNIX、LUNIX等操作系統(tǒng)。

  在系統(tǒng)平臺層之上是系統(tǒng)的數(shù)據(jù)層,數(shù)據(jù)庫可以使用XML。XML具有良好的可擴展性,語言簡單有效,可自行定義標記;內容與形式的分離,主要刻畫數(shù)據(jù)內容,不考慮顯示效果;有嚴格的語法要求,便于分析統(tǒng)一和與數(shù)據(jù)庫信息轉換,便于傳輸,為純文本形式,可通過Http協(xié)議直接傳輸,可跨越防火墻等。系統(tǒng)還可以采用MS SQL Server、DB2、MySql等其他數(shù)據(jù)庫。

  在系統(tǒng)平臺層和數(shù)據(jù)層的支持下,系統(tǒng)通過服務層對整個平臺提供服務,提供應用的支持和標準化的應用接口。用戶認證中心就建立在服務層,給每一個用戶一個建立用戶標識,并負責對每一個登錄客戶進行系統(tǒng)認證。

  在服務層之上系統(tǒng)構架了應用層。應用層包括校園內的其他各種綜合應用系統(tǒng),如指揮自動化網(wǎng)、政治工作宣傳網(wǎng)、財務網(wǎng)等。由于系統(tǒng)提供標準化接口,因此,單位內部已有的應用系統(tǒng)和以后開發(fā)的應用只要使用標準化接口,就可以方便、無縫地構架在系統(tǒng)平臺應用中。

  整個多層次結構組成了的系統(tǒng)的整體,通過多層次的結構應用,系統(tǒng)的擴展性和靈活性都得以保證,并且具有更廣闊的適用性。

  2.2 系統(tǒng)間互操作的要領

  在數(shù)字化校園中,數(shù)據(jù)層面所需的信息集中存儲,并給各應用子系統(tǒng)共享,有效防止了信息的冗余和不一致,保證數(shù)據(jù)的準確性和可靠性;可以方便地實現(xiàn)核心數(shù)據(jù)的集中管理與備份,提高系統(tǒng)的安全性,減少設備的投資和管理的人力成本。數(shù)據(jù)中心在數(shù)據(jù)級對“一卡通”和其他系統(tǒng)的數(shù)據(jù)進行無縫集成,便于信息的共享、交流和各項業(yè)務的協(xié)作。

  一卡通系統(tǒng)應該充分使用統(tǒng)一共享數(shù)據(jù)平臺提供的公共數(shù)據(jù)編碼、身份信息等數(shù)據(jù),而不應該單獨維護一套獨立、非標準的信息。同時,一卡通系統(tǒng)擁有自己的業(yè)務數(shù)據(jù)庫,將其他應用系統(tǒng)需要的信息納入共享數(shù)據(jù)庫的統(tǒng)一設計中,實現(xiàn)校園一卡通系統(tǒng)數(shù)據(jù)對整個數(shù)字化校園的共享。通過數(shù)字化校園應用建設,形成一套符合高校自身實際的管理信息化標準,也是數(shù)字化校園建設中的一項重要內容。筆者結合大量案例,根據(jù)學校信息化現(xiàn)狀提出信息代碼編碼標準、軟硬件平臺標準、應用系統(tǒng)規(guī)范、業(yè)務流程規(guī)范和數(shù)據(jù)交換標準等,為今后的應用系統(tǒng)的建設制定了規(guī)范。一卡通作為重要的應用系統(tǒng)必須符合整體標準。

  為了集成,一卡通使用的公共信息字典必須遵循學校的信息編碼規(guī)范,數(shù)據(jù)模式必須遵循數(shù)據(jù)庫第三范式,一卡通使用的用戶及其信息必須與業(yè)務系統(tǒng)提供的信息一致,可以相互關聯(lián),以保證一卡通的數(shù)據(jù)和學校的其他信息數(shù)據(jù)同時進行查詢、分析、統(tǒng)計。針對于卡的門戶應用,共享數(shù)據(jù)中心的數(shù)據(jù)既要能展示相關的信息,如校園卡選課后學生的選課課程、選課的繳費等,又能統(tǒng)計相關的信息,如不同專業(yè)的學生費用使用總計及平均消費情況等,這些都需要充分的集成設計。

  3 結語

  一卡通系統(tǒng)是以非接觸卡為信息載體,適用于各式各樣消費和管理的多功能網(wǎng)絡系統(tǒng),目前已實現(xiàn)就餐收費管理、圖書借閱管理、醫(yī)療收費管理、上機計時收費管理、校內消費管理、早操出勤管理等,本文簡要說明了利用JBuilder和Weblogie快速開發(fā)基于J2EE的應用。由于采用了容器管理的持久性(Container-Managed Persistent,CMP),由容器負責將entity beans的更新同步(保存)到數(shù)據(jù)庫,即由容器負責entity beans的持久性管理,開發(fā)人員只需考慮業(yè)務邏輯,大大減輕了開發(fā)人員的負擔,而且還提供了良好的事務與安全保障;JBuilder是個功能強大的工具,熟練掌握這個開發(fā)工具,可以大大提高J2EE應用的開發(fā)效率。(文/楊志和 上海電機學院電子信息學院)

  參考文獻:
  [1] Girdley M.J2EE應用與BEA Weblogic Server EM].邢國慶,譯.北京:電子工業(yè)出版社,2003.
  [2] 楊芙清,梅宏,李克勤.軟件復用與軟件構件技術EJ].電子學報,1999,27(2):68—75.
  [3] 趙芳,韋群.基于構件的軟件工程研究I-J].裝備指揮技術學院學報,2002,13(4):56-58、
  [4]劉海巖,梁建龍.基于中間件的分布式系統(tǒng)開發(fā)過程的研究[J].計算機應用研究,2004(1):85—87.
  [5]楊志和,李業(yè)榮.基于Web Services的企業(yè)電子商務應用集成技術的研究[J].廣西科學院學報,2006,22(3):161— 163.
  [6]楊志和.RFID系統(tǒng)與第三方應用的信息集成技術[J].華東理工大學學報:自然科學版,2007,33(增刊):141— 144.
  [7]楊志和.基于Web Services的教育資源共享平臺的設計與研究EJ].上海電機學院學報,2007,10(1):49—52.
  [8]楊志和,李業(yè)榮.基于中間件和RFID技術的第三方物流MIS的應用研究I-J].計算機應用研究,2006(增刊):592—593.

本文關鍵詞:J2EE,校園一卡通,一卡通系統(tǒng),考勤,一卡通平臺
回到頂部
吉安市| 搜索| 郯城县| 南京市| 松阳县| 岢岚县| 湘阴县| 阿巴嘎旗| 大宁县| 宿迁市| 漳浦县| 云阳县| 广昌县| 丹巴县| 开阳县| 九龙城区| 建平县| 呼和浩特市| 定陶县| 六枝特区| 宁阳县| 高要市| 安溪县| 嘉义县| 文山县| 惠东县| 四川省| 永城市| 太和县| 弥渡县| 西贡区| 张家界市| 兴隆县| 马边| 兖州市| 兴安县| 赤水市| 阜新| 拜城县| 正定县| 南昌市|