汪燕芳 張衛(wèi)強 邱玉
摘要:通過對Struts2框架、Spring框架、Hibernate框架進行分析,提出了基于這三大開源框架的開發(fā)策略,設(shè)計并實現(xiàn)職工管理系統(tǒng)。依據(jù)職工管理系統(tǒng)的需求分析,對系統(tǒng)功能模塊、數(shù)據(jù)庫進行設(shè)計。建立了整合Struts2、Spring、Hibernate三大框架的多層企業(yè)級的Java Web的應(yīng)用系統(tǒng)架構(gòu),同時結(jié)合接口技術(shù),充分實現(xiàn)系統(tǒng)的安全性和可維護性。系統(tǒng)的一大新穎之處是調(diào)用了Google Calendar API,能成功的顯示中國節(jié)假日,并且能對事件進行短信的提醒。
關(guān)鍵詞:Struts2;Spring;Hibernate;職工管理系統(tǒng);Google Calendar API
中圖分類號:TP315 文獻標(biāo)識碼:A 文章編號:1009-3044(2014)14-3307-04
Abstract: According to analyzing of the Struts2 framework, the Spring framework and the Hibernate framework, the development strategy was put forward which was based on those three open source frameworks, then a staff management system can be designed and implemented. On the basis of the staff management system requirements analysis, the system function modules and databases were designed. The multilayer enterprise of Java Web application system architecture was set up by integrating Struts2, Spring, Hibernate and combining with interface technology. Security and maintainability of the system can be fully realized. A novelty of the system is to call the Google Calendar API, it can display the Chinese holidays and remind somebody events by SMS.
Key words: Struts2; Spring; Hibernate; employee management system; Google Calendar API
在上個世紀(jì)60年代,人力資源管理系統(tǒng)首次被提出,當(dāng)時的管理系統(tǒng)只具備一些簡單的計算能力,而不具備存儲的能力。而隨著計算機技術(shù)的飛速發(fā)展,人們已經(jīng)進入信息化的時代,現(xiàn)在用計算機進行企業(yè)的信息管理已經(jīng)成為一個企業(yè)的信息化和現(xiàn)代化的標(biāo)志。然而也有不少的中小企業(yè)還是用人工記錄的方式來進行企業(yè)的管理,這樣不僅效率低下還會容易出錯。該文采用了當(dāng)下三大主流框架即Struts2、Spring、Hibernate,并結(jié)合接口技術(shù)[1],對職工管理系統(tǒng)進行實現(xiàn)。從而提高人力資源的管理效率、減少財務(wù)出錯和提高部門服務(wù)質(zhì)量。
1 技術(shù)支持
1.1 Struts2框架
Struts是建立在當(dāng)前動態(tài)網(wǎng)站設(shè)計領(lǐng)域中jsp、Servlet、xml等相關(guān)開發(fā)技術(shù)基礎(chǔ)上的一種主流的開發(fā)架構(gòu),其為web應(yīng)用提供了通用的框架,是Java Web程序員必備的技能,最重要的是Struts2[2]是一種基于MVC[3]經(jīng)典設(shè)計模式的框架,各部分是M為Struts2中的Action,V為JSP、FreeMarker等視圖,C為Struts filter。Struts2執(zhí)行過程如圖1所示。
Struts2的核心思想就是把請求和展現(xiàn)(視圖)分開。Struts2并不是從Struts1的簡單升級而來,而是在WebWork2[4]基礎(chǔ)發(fā)展而來,同時它也具有Struts1的優(yōu)點。Struts2和Struts1有個顯著的不同點是,在Struts1中action對象只有一個,這樣會出現(xiàn)線程同步問題,而Struts2訪問action,都會new 一個新的action對象出來,不會有線程同步的問題。Struts2的優(yōu)點:
1) Struts2的應(yīng)用可以不依賴于Servlet API和Struts API,Struts2的這種設(shè)計屬于無侵式設(shè)計。
2) Struts2提供了攔截器[5]。利用攔截器可以進行ASP編程,如實現(xiàn)權(quán)限攔截等功能。
3) Struts2提供類型轉(zhuǎn)換器。
4) Struts2提供支持多種表現(xiàn)層技術(shù),如JSP、freeMarker、Velocity。
5) Struts2的輸入校驗可以對指定辦法進行校驗。
6) Struts2提供全局范圍、包范圍和Action范圍的國際化資源文件管理實現(xiàn)。
1.2 Hibernate框架
Hibernate是數(shù)據(jù)持久化層的框架,是一種O/R Mapping[6]的工具,在用Hibernate時,我們把面向?qū)ο蟮膶懛ǜ采w到原來面向關(guān)系的數(shù)據(jù)庫上,用面向?qū)ο蟮姆椒ㄍ瓿稍瓉淼膶?shù)據(jù)庫增、刪、改、查的操作。很大 程度上減少數(shù)據(jù)訪問程度。Hibernate的執(zhí)行過程如圖2所示。
在Hibernate中,我們關(guān)鍵是要實現(xiàn)“O/R Mapping”,其實現(xiàn)方式有兩種:
1) 配置XML[7]的映射文件,來進行對象和表、對象屬性和字段的映射。endprint
2) 用annotation[8]類型進行標(biāo)注。
在實際操作中,用annotation類型更加方便、簡潔。所以要重annotation,輕 XML配置文件。
使用Hibernate時,不用考慮底層運用的是什么數(shù)據(jù)庫,Hibernate對任何數(shù)據(jù)庫就有兼容性。需要使用什么樣的數(shù)據(jù)庫,只需要更改XML配置文件。Hibernate通過hibernate.cfg.xml來自動創(chuàng)建表。從純理論來講先建類后建表,但在實際操作中先建表后建類的情況是比較多的。具體原因:
1) 在使用Hibernate時就是先建表。
2) 建好數(shù)據(jù)庫,一般要對DB做一些優(yōu)化,比如說建索引、中間表、圖等等。
1.3 Spring 框架
Spring框架是JAVA EE開發(fā)設(shè)計中工作在業(yè)務(wù)邏輯層的,它是輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP[9])的容器框架??刂品崔D(zhuǎn)(IoC[10])也有人叫做依賴注入(DI),其概念是自己不創(chuàng)建對象,new的對象改為容器提供。而AOP就是一種編程的技術(shù)。它使程序員能對橫切關(guān)注點或橫切典型的職責(zé)分界線的行為進行模塊化。
2 系統(tǒng)的設(shè)計與實現(xiàn)
2.1 系統(tǒng)功能模塊和Google Calendar API
本系統(tǒng)采用開源、輕量級的SSH2框架,來實現(xiàn)系統(tǒng)各功能,也方便于功能的擴展。其功能模塊可分為登入模塊、員工管理模塊、部門管理部門、考核管理部門和薪資管理部門。系統(tǒng)功能模塊如圖3所示。
為了體現(xiàn)本系統(tǒng)的新穎性,本系統(tǒng)在管理的模塊,添加一日歷,該日歷調(diào)用了Google Calendar API[11],Google對日歷列表的讀取和管理操作都是通過3個日歷列表feed(即metafeed、allcalendars、owncalendars)來進行的。metafeed其內(nèi)容是當(dāng)前用戶可訪問的所有日歷,allcalendars可用于管理用戶擁有或訂閱的日歷,owncalendars用于管理用戶擁有的日歷。Feed中每個條目(entry)的內(nèi)容為一個日歷。以下就是新建的一個包含基本信息的日歷(即[11]元素),代碼如下:
xmlns:gd='http://schemas.google.com/g/2005' xmlns:gCal='http://schemas.google.com/gCal/2005'>
新建日歷
新日歷容.
然后,用POST方法將其作為報文發(fā)送給owncalendars,即可創(chuàng)建新的日歷。下面對這個日歷進行簡要的解釋:該簡單日歷中包括標(biāo)題、摘要<summary>、時區(qū)<gCal:timezone>、是否顯示<gCal:hidden>、日歷界面顯示的顏色<gCal:color>以及你所在的位置<gd:where>。<br>以上就是對一個日歷進行新建的操作,我們可以編寫代碼來實現(xiàn)日歷其他功能,如更新日歷設(shè)置、刪除日歷等等。<br>2.2 系統(tǒng)開發(fā)過程概述<br>1) 數(shù)據(jù)庫的設(shè)計<br>根據(jù)功能模塊的分析,對數(shù)據(jù)庫進行設(shè)計[12],本系統(tǒng)設(shè)計了七個主要數(shù)據(jù)表,即員工信息數(shù)據(jù)表、管理員數(shù)據(jù)表、部門數(shù)據(jù)表、職位數(shù)據(jù)表、培訓(xùn)數(shù)據(jù)表、薪等數(shù)據(jù)庫以及考核項目成績數(shù)據(jù)表。本系統(tǒng)運用的數(shù)據(jù)庫是MySQL,MySQL數(shù)據(jù)庫是當(dāng)前流行的開放源代碼數(shù)據(jù)庫之一,具有免費性。號稱全球最大的社交網(wǎng)站facebook.com所用的數(shù)據(jù)庫就是MySQL[13]。<br>2) 搭建框架<br>在集成開發(fā)環(huán)境MyEclipse[14]中,要整合Struts2、Spring、Hibernate三大框架[15]才能進行項目的開發(fā)。新建Web項目,為其添加Spring功能,導(dǎo)入其兩個jar包,即spring.jar和commons-logging.jar。再添加Hibernate功能,其配置文件由Spring管理。最后添加Struts2的功能,需要導(dǎo)入六個核心的jar包,如ognl-2.6.11.jar、struts2-core-2.1.6.jar、xwork-2.1.2.jar等等,還需要導(dǎo)入一個插件包struts2-spring-plugin-2.2.1.1.jar。為了使系統(tǒng)和數(shù)據(jù)庫聯(lián)系起來還要導(dǎo)入mysql-connector-java-5.1.26-bin.jar。<br>同樣也要注意對配置文件進行配置,即web.xml、applicationContext.xml、hibernate.cfg.xml、struts.xml[16]。其中hibernate的作用就是把面向數(shù)據(jù)庫的操作轉(zhuǎn)化成面向?qū)ο蟮牟僮?,再通過HQL語句來完成添加、刪除和修改等等功能。hibernate.cfg.xml就是對具體數(shù)據(jù)庫配置的文件,如下部分代碼:<property name="connection.driver_class">com.mysql.jdbc.Driver</property> <!--endprint--> </div> </div> <div class="newartpage"> [<a href="article.aspx?titleid=dnjl20141436">1</a>] <label class="fBold"> 2 </label> [<a href="article.aspx?titleid=dnjl20141436-2">3</a>] 本文為全文原貌 未安裝<a >PDF瀏覽器</a>用戶請先下載安裝 <a target="_blank" style="color: Blue">原版全文</a> <a href="javascript:OpenFavoriteTitle('dnjl20141436','基于SSH2架構(gòu)的職工管理系統(tǒng)的研究與實現(xiàn)','汪燕芳張衛(wèi)強邱玉');"> 存入我的閱覽室</a> </div> </div> </div> <div class="eiboxright"> <div class="eiboxrighttop"> </div> <div class="eiboxrightbody0"> <div class="eitextbox"> <ul> <li><a target="_blank" href="Mag.aspx?issn=483B138C-081E-4329-A35A-D97DE4857605&year=2018&issue=2"> <img src="http://img1.qikan.com/qkimages/dnjl/dnjl201802-m.jpg" alt="《故事會》" style="filter: alpha(opacity=100);" onmousemove="javascript:f_move(this)" onmouseout="javascript:f_out(this)" width="120px" height="158px" /> </a> <p> <b><a target="_blank" href="Mag.aspx?issn=483B138C-081E-4329-A35A-D97DE4857605&year=2018&issue=2" title="電腦知識與技術(shù)">《電腦知識與技術(shù)》</a></b><br /> 2018年02期 </p> </li> </ul> </div> <div class="eiboxrightbody0dlcase"> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 數(shù)據(jù)庫與信息管理</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141401" title="GRIB2資料解讀"> GRIB2資料解讀</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141402" title="油田勘探項目數(shù)據(jù)庫建設(shè)技術(shù)研究"> 油田勘探項目數(shù)據(jù)庫建設(shè)技術(shù)研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141403" title="MapReduce在Hadoop平臺下作業(yè)調(diào)度算法的改進和實現(xiàn)"> MapReduce在Hadoop平臺下作業(yè)調(diào)度算法的改進和實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141404" title="基于oracle的醫(yī)院his數(shù)據(jù)庫優(yōu)化"> 基于oracle的醫(yī)院his數(shù)據(jù)庫優(yōu)化</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141405" title="常用作業(yè)調(diào)度算法的分析"> 常用作業(yè)調(diào)度算法的分析</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141406" title="復(fù)雜網(wǎng)絡(luò)環(huán)境下數(shù)據(jù)交換平臺的設(shè)計"> 復(fù)雜網(wǎng)絡(luò)環(huán)境下數(shù)據(jù)交換平臺的設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141407" title="基于DL的數(shù)據(jù)庫概化方法"> 基于DL的數(shù)據(jù)庫概化方法</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141408" title="變壓器行業(yè)實時成本管理信息系統(tǒng)的研究與設(shè)計"> 變壓器行業(yè)實時成本管理信息系統(tǒng)的研究與設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141409" title="數(shù)據(jù)庫的非常規(guī)式安全隱患分析"> 數(shù)據(jù)庫的非常規(guī)式安全隱患分析</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141410" title="基于Hopfield—GA算法的移動Sink數(shù)據(jù)采集優(yōu)化"> 基于Hopfield—GA算法的移動Sink數(shù)據(jù)采集優(yōu)化</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141411" title="云存儲以及基于云平臺下的數(shù)據(jù)恢復(fù)問題研究"> 云存儲以及基于云平臺下的數(shù)據(jù)恢復(fù)問題研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141412" title="高職院校共享型教學(xué)資源庫建設(shè)思路與實現(xiàn)"> 高職院校共享型教學(xué)資源庫建設(shè)思路與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141413" title="河南省風(fēng)能數(shù)據(jù)庫系統(tǒng)建設(shè)"> 河南省風(fēng)能數(shù)據(jù)庫系統(tǒng)建設(shè)</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 網(wǎng)絡(luò)通訊及安全</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141414" title="實現(xiàn)網(wǎng)絡(luò)問政與網(wǎng)絡(luò)民意有效對接"> 實現(xiàn)網(wǎng)絡(luò)問政與網(wǎng)絡(luò)民意有效對接</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141415" title="面向服務(wù)構(gòu)架下Web服務(wù)安全問題的研究"> 面向服務(wù)構(gòu)架下Web服務(wù)安全問題的研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141416" title="淺談防騷擾電話監(jiān)控系統(tǒng)解決方案"> 淺談防騷擾電話監(jiān)控系統(tǒng)解決方案</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141417" title="關(guān)于計算機網(wǎng)絡(luò)硬件的故障維護策略分析"> 關(guān)于計算機網(wǎng)絡(luò)硬件的故障維護策略分析</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141418" title="物聯(lián)網(wǎng)技術(shù)與應(yīng)用研究"> 物聯(lián)網(wǎng)技術(shù)與應(yīng)用研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141419" title="高校網(wǎng)站安全防護方案"> 高校網(wǎng)站安全防護方案</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141420" title="IPV6過渡技術(shù)在高職數(shù)字化校園中的設(shè)計研究"> IPV6過渡技術(shù)在高職數(shù)字化校園中的設(shè)計研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141421" title="可追蹤的匿名證書"> 可追蹤的匿名證書</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141422" title="RSA加密算法的有效實現(xiàn)及在云計算中的應(yīng)用"> RSA加密算法的有效實現(xiàn)及在云計算中的應(yīng)用</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141423" title="高郵廣電城域網(wǎng)優(yōu)化升級方案"> 高郵廣電城域網(wǎng)優(yōu)化升級方案</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141424" title="淺談個人計算機病毒防范對策"> 淺談個人計算機病毒防范對策</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 軟件設(shè)計開發(fā)</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141425" title="基于Android平臺的Metoos社區(qū)在線系統(tǒng)的設(shè)計與實現(xiàn)"> 基于Android平臺的Metoos社區(qū)在線系統(tǒng)的設(shè)計與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141426" title="油田企業(yè)級軟件共享系統(tǒng)的遠程交互組件研究及實現(xiàn)"> 油田企業(yè)級軟件共享系統(tǒng)的遠程交互組件研究及實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141427" title="消息中間件TongLINK/Q的應(yīng)用"> 消息中間件TongLINK/Q的應(yīng)用</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141428" title="在線計費系統(tǒng)OCS的技術(shù)架構(gòu)及應(yīng)用分析"> 在線計費系統(tǒng)OCS的技術(shù)架構(gòu)及應(yīng)用分析</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141429" title="基于java的對象持久性設(shè)計方案淺議"> 基于java的對象持久性設(shè)計方案淺議</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141430" title="基于Android的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)"> 基于Android的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141431" title="《大學(xué)英語》試題庫系統(tǒng)建設(shè)的思考"> 《大學(xué)英語》試題庫系統(tǒng)建設(shè)的思考</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141432" title="基于Drupal的專題服務(wù)網(wǎng)站開發(fā)研究"> 基于Drupal的專題服務(wù)網(wǎng)站開發(fā)研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141433" title="Ajax技術(shù)與RIA在網(wǎng)絡(luò)辦公自動化系統(tǒng)中的應(yīng)用分析"> Ajax技術(shù)與RIA在網(wǎng)絡(luò)辦公自動化系統(tǒng)中的應(yīng)用分析</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141434" title="教學(xué)網(wǎng)站評價指標(biāo)體系的構(gòu)建及評估方法"> 教學(xué)網(wǎng)站評價指標(biāo)體系的構(gòu)建及評估方法</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141435" title="“終身教育”創(chuàng)新服務(wù)平臺項目的研究"> “終身教育”創(chuàng)新服務(wù)平臺項目的研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141436" title="基于SSH2架構(gòu)的職工管理系統(tǒng)的研究與實現(xiàn)"> 基于SSH2架構(gòu)的職工管理系統(tǒng)的研究與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141437" title="程序設(shè)計之新解"> 程序設(shè)計之新解</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141438" title="常熟市社區(qū)衛(wèi)生信息平臺建設(shè)與分析"> 常熟市社區(qū)衛(wèi)生信息平臺建設(shè)與分析</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141439" title="基于Office軟件的智能稿件登記送審軟件設(shè)計"> 基于Office軟件的智能稿件登記送審軟件設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141440" title="基于Web的快捷訪問系統(tǒng)的設(shè)計與實現(xiàn)"> 基于Web的快捷訪問系統(tǒng)的設(shè)計與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141441" title="基于C#的小型酒店住宿管理系統(tǒng)的設(shè)計與實現(xiàn)"> 基于C#的小型酒店住宿管理系統(tǒng)的設(shè)計與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141442" title="金融信息人才發(fā)展環(huán)境評價系統(tǒng)的設(shè)計與開發(fā)"> 金融信息人才發(fā)展環(huán)境評價系統(tǒng)的設(shè)計與開發(fā)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141443" title="基于B/S模式的無紙化考試系統(tǒng)整合平臺"> 基于B/S模式的無紙化考試系統(tǒng)整合平臺</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141444" title="基于Android系統(tǒng)的互動展示APP的研究與設(shè)計"> 基于Android系統(tǒng)的互動展示APP的研究與設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141445" title="基于Lucene的期刊全文檢索平臺設(shè)計與研究"> 基于Lucene的期刊全文檢索平臺設(shè)計與研究</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 計算機教學(xué)與教育信息化</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141446" title="《數(shù)據(jù)庫原理》課程中關(guān)系代數(shù)“除”運算教學(xué)的探討"> 《數(shù)據(jù)庫原理》課程中關(guān)系代數(shù)“除”運算教學(xué)的探討</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141447" title="《單片機原理及應(yīng)用》課程教學(xué)改革方法探討"> 《單片機原理及應(yīng)用》課程教學(xué)改革方法探討</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141448" title="Moodle在程序設(shè)計公共課教學(xué)中的應(yīng)用探討"> Moodle在程序設(shè)計公共課教學(xué)中的應(yīng)用探討</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141449" title="操作系統(tǒng)課程群建設(shè)的研究與實踐"> 操作系統(tǒng)課程群建設(shè)的研究與實踐</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141450" title="電子信息工程計算機課程體系及教學(xué)探索"> 電子信息工程計算機課程體系及教學(xué)探索</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141451" title="論現(xiàn)代教育技術(shù)對獨立學(xué)院教育改革的戰(zhàn)略意義"> 論現(xiàn)代教育技術(shù)對獨立學(xué)院教育改革的戰(zhàn)略意義</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141452" title="應(yīng)用型地方本科院校產(chǎn)學(xué)研合作教育初探"> 應(yīng)用型地方本科院校產(chǎn)學(xué)研合作教育初探</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141453" title="高校青年教師職業(yè)能力的培養(yǎng)方案的探討"> 高校青年教師職業(yè)能力的培養(yǎng)方案的探討</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141454" title="三維可視化算法教學(xué)在程序設(shè)計課程中的應(yīng)用研究"> 三維可視化算法教學(xué)在程序設(shè)計課程中的應(yīng)用研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141455" title="項目教學(xué)法在影視編輯教學(xué)中的應(yīng)用"> 項目教學(xué)法在影視編輯教學(xué)中的應(yīng)用</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 人工智能及識別技術(shù)</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141456" title="基于NSCT及人眼視覺特性的醫(yī)學(xué)圖像融合"> 基于NSCT及人眼視覺特性的醫(yī)學(xué)圖像融合</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141457" title="基于蟻群算法的多Sink節(jié)點任務(wù)分配控制策略"> 基于蟻群算法的多Sink節(jié)點任務(wù)分配控制策略</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141458" title="醫(yī)學(xué)圖片中分離重疊細胞的方法研究"> 醫(yī)學(xué)圖片中分離重疊細胞的方法研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141459" title="淺談一種基于Kinect的體感交互應(yīng)用開發(fā)方法"> 淺談一種基于Kinect的體感交互應(yīng)用開發(fā)方法</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141460" title="基于SIFT和函數(shù)強制改正算法的圖像拼接研究"> 基于SIFT和函數(shù)強制改正算法的圖像拼接研究</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 多媒體技術(shù)及其應(yīng)用</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141461" title="無線LCD廣告牌系統(tǒng)的設(shè)計實現(xiàn)"> 無線LCD廣告牌系統(tǒng)的設(shè)計實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141462" title="基于Android4.2平臺實現(xiàn)Miracast 無縫視頻共享"> 基于Android4.2平臺實現(xiàn)Miracast 無縫視頻共享</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141463" title="多媒體課件制作中色彩運用的研究"> 多媒體課件制作中色彩運用的研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141464" title="基于模態(tài)分析法的變形動畫技術(shù)"> 基于模態(tài)分析法的變形動畫技術(shù)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141465" title="探討After Effects 的特效應(yīng)用"> 探討After Effects 的特效應(yīng)用</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141466" title="淺談數(shù)字導(dǎo)播系統(tǒng)在交通頻率的應(yīng)用"> 淺談數(shù)字導(dǎo)播系統(tǒng)在交通頻率的應(yīng)用</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141467" title="平面設(shè)計中視覺審美元素的構(gòu)建"> 平面設(shè)計中視覺審美元素的構(gòu)建</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141468" title="礦用類系統(tǒng)中的圖形組件應(yīng)用研究"> 礦用類系統(tǒng)中的圖形組件應(yīng)用研究</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 計算機工程應(yīng)用技術(shù)</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141469" title="基于Android的溫室監(jiān)測系統(tǒng)"> 基于Android的溫室監(jiān)測系統(tǒng)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141470" title="嵌入式系統(tǒng)功率輸出通道可靠性設(shè)計"> 嵌入式系統(tǒng)功率輸出通道可靠性設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141471" title="淺談計算機教室的維護"> 淺談計算機教室的維護</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141472" title="礦山開發(fā)環(huán)境監(jiān)測系統(tǒng)研究"> 礦山開發(fā)環(huán)境監(jiān)測系統(tǒng)研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141473" title="預(yù)估計鎖位RFID二進制防碰撞算法"> 預(yù)估計鎖位RFID二進制防碰撞算法</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141474" title="智能辦公綜合服務(wù)平臺的部署"> 智能辦公綜合服務(wù)平臺的部署</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141475" title="魂芯DSP上濾波算法的高效實現(xiàn)"> 魂芯DSP上濾波算法的高效實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141476" title="RFID在大型物流倉庫中的定位應(yīng)用"> RFID在大型物流倉庫中的定位應(yīng)用</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141477" title="基于VMware技術(shù)的高職院校圖書館服務(wù)器架構(gòu)研究"> 基于VMware技術(shù)的高職院校圖書館服務(wù)器架構(gòu)研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141478" title="多校區(qū)辦學(xué)模式下公共機房虛擬化管理的探討"> 多校區(qū)辦學(xué)模式下公共機房虛擬化管理的探討</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141479" title="基于PLC的繩頭拉桿電鐓機控制系統(tǒng)設(shè)計"> 基于PLC的繩頭拉桿電鐓機控制系統(tǒng)設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141480" title="基于FTA的機載計算機修理模式研究"> 基于FTA的機載計算機修理模式研究</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141481" title="利用Quest3D實現(xiàn)虛擬拆裝的編程方法"> 利用Quest3D實現(xiàn)虛擬拆裝的編程方法</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141482" title="基于STC15單片機的無線遙控智能小車的設(shè)計"> 基于STC15單片機的無線遙控智能小車的設(shè)計</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141483" title="長慶油田GPS車輛監(jiān)控系統(tǒng)軌跡數(shù)據(jù)設(shè)計與應(yīng)用"> 長慶油田GPS車輛監(jiān)控系統(tǒng)軌跡數(shù)據(jù)設(shè)計與應(yīng)用</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141484" title="利用二維碼技術(shù)犯罪現(xiàn)狀啟示"> 利用二維碼技術(shù)犯罪現(xiàn)狀啟示</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141485" title="USB通信方式研究"> USB通信方式研究</a> </dd> </dl> <dl onmouseover="this.className='cc0'" onmouseout="this.className='cc1'"> <dt> 電子商務(wù)與電子政務(wù)</dt> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141486" title="基于跨平臺的移動政務(wù)系統(tǒng)的設(shè)計與實現(xiàn)"> 基于跨平臺的移動政務(wù)系統(tǒng)的設(shè)計與實現(xiàn)</a> </dd> <dd > <a target="_blank" href="Article.aspx?titleid=dnjl20141487" title="電子商務(wù)網(wǎng)站W(wǎng)eb IM系統(tǒng)設(shè)計與實現(xiàn)"> 電子商務(wù)網(wǎng)站W(wǎng)eb IM系統(tǒng)設(shè)計與實現(xiàn)</a> </dd> </dl> </div> </div> </div> </div> </div> <div id="menuFooterDiv" class="headnav0"></div> <script type="text/javascript"> jQuery("#menuHeaderDiv").html(html); jQuery(function () { jQuery("#morelayer").hover(function () { jQuery("#divmorelayer").fadeIn(300); }) jQuery("#divmorelayer").hover(function () { jQuery("#divmorelayer").fadeIn(300); }, function () { jQuery("#divmorelayer").fadeOut(300); }) }) jQuery("#menuFooterDiv").html(htmlFooter); jQuery(function () { jQuery("#morelayerFooter").hover(function () { jQuery("#divmorelayerFooter").fadeIn(300); }) jQuery("#divmorelayerFooter").hover(function () { jQuery("#divmorelayerFooter").fadeIn(300); }, function () { jQuery("#divmorelayerFooter").fadeOut(300); }) }) if (jQuery('.morelayer_body > a').length == 0) { //頁眉/頁腳導(dǎo)航“更多”下沒有內(nèi)容,將“更多”隱藏 jQuery('.threeunit').hide(); } </script> <div class="rearinfo"> 公司地址: 北京市西城區(qū)德外大街83號德勝國際中心B-11<br>客服熱線:400-656-5456??客服專線:010-56265043??電子郵箱:<a href="mailto:longyuankf@126.com">longyuankf@126.com</a><br>電信與信息服務(wù)業(yè)務(wù)經(jīng)營許可證:<a target="_blank">京icp證060024號</a><br>Dragonsource.com Inc. All Rights Reserved </div><div class="icp"> <a target="_blank"> <img src="/Content/Images/icp.jpg" alt="icp" /></a></div> </div> </div> </form> <script type="text/javascript" src="/Content/Script/jquery.cookie.js"></script> <script type="text/javascript"> jQuery(document.body).ready(function () { if (jQuery.cookie('enablecookie') == null) { jQuery.cookie('enablecookie', '1'); var ec = jQuery.cookie('enablecookie'); if (ec == null) { location.href = "http://" + domain + "/content/error.aspx?error=nocookie"; } } }); </script> <script type="text/javascript"> var showad = true; var Toppx = jQuery(".headbox").height() + jQuery(".banner").height() + 10; //60; var AdDivW = 100; var AdDivH = 252; var PageWidth = 800; var MinScreenW = 1024; function scall1() { if (!showad) { return; } if (window.screen.width < MinScreenW) { showad = false; // document.getElementById("ctl00_LeftDiv").style.display = "none"; // document.getElementById("ctl00_RightDiv").style.display = "none"; jQuery("#ctl00_LeftDiv").hide(); jQuery("#ctl00_RightDiv").hide(); return; } var Borderpx = 30; //((window.screen.width - PageWidth) / 2 - AdDivW) / 2; // document.getElementById('ctl00_LeftDiv').style.display = ""; // document.getElementById('ctl00_LeftDiv').style.top = document.documentElement.scrollTop + Toppx; // document.getElementById('ctl00_LeftDiv').style.left = document.documentElement.scrollLeft + Borderpx; // document.getElementById('ctl00_RightDiv').style.display = ""; // document.getElementById('ctl00_RightDiv').style.top = document.documentElement.scrollTop + Toppx; // document.getElementById('ctl00_RightDiv').style.left = document.documentElement.scrollLeft + document.body.clientWidth - document.getElementById('ctl00_RightDiv').offsetWidth - Borderpx; jQuery("#ctl00_LeftDiv").show(); var Scrolltoppx = document.documentElement.scrollTop; var Scrollleftpx = document.documentElement.scrollLeft; jQuery("#ctl00_LeftDiv").css("top", Scrolltoppx + Toppx); jQuery("#ctl00_LeftDiv").css("left", Scrollleftpx + Borderpx); jQuery("#ctl00_RightDiv").show(); jQuery("#ctl00_RightDiv").css("top", Scrolltoppx + Toppx); jQuery("#ctl00_RightDiv").css("left", Scrollleftpx + document.body.clientWidth - document.getElementById('ctl00_RightDiv').offsetWidth - Borderpx); } function hidead1() { showad = false; document.getElementById('ctl00_LeftDiv').style.display = "none"; document.getElementById('ctl00_RightDiv').style.display = "none"; } function addLoadEvent1(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function () { oldonload(); func(); } } } window.onscroll = scall1; window.onresize = scall1; addLoadEvent1(scall1); </script> <script type="text/javascript"> var piao=false; var xPos = 300; var yPos = 200; var step = 1; var delay = 30; var height = 0; var Hoffset = 0; var Woffset = 0; var yon = 0; var xon = 0; var pause = true; var interval; var img1 = document.getElementById("ctl00_PiaoDiv"); img1.style.display = 'block'; img1.style.top = yPos; function changePos() { var Scrolltoppx = document.documentElement.scrollTop; var Scrollleftpx = document.documentElement.scrollLeft; width = document.body.clientWidth - 200; height = document.documentElement.clientHeight; Hoffset = img1.offsetHeight; Woffset = img1.offsetWidth; jQuery(img1).css("left", xPos + document.body.scrollLeft); jQuery(img1).css("top", Scrolltoppx + yPos + document.body.scrollTop); if (yon) { yPos = yPos + step; } else { yPos = yPos - step; } if (yPos < 0) { yon = 1; yPos = 0; } if (yPos >= (height - Hoffset)) { yon = 0; yPos = (height - Hoffset); } if (xon) { xPos = xPos + step; } else { xPos = xPos - step; } if (xPos < 0) { xon = 1; xPos = 0; } if (xPos >= (width - Woffset)) { xon = 0; xPos = (width - Woffset); } } function start() { img1.visibility = "visible"; interval = setInterval('changePos()', delay); } function pause_resume() { if (pause) { clearInterval(interval); pause = false; } else { interval = setInterval('changePos()', delay); pause = true; } } if(piao) { start(); } </script> <fjtignoreurl> <script type="text/javascript"> //為了處理https協(xié)議在繁簡轉(zhuǎn)換的時候會默認(rèn)吧鏈接轉(zhuǎn)換成帶有端口號444的鏈接的問題。 jQuery(function () { $("a[href*=':444']").each(function () { var link = $(this).attr('href'); link = link.replace(/^https://big5.qikan.com:444/i, "http://big5.qikan.com") $(this).attr('href', link); }); });</script></fjtignoreurl> <script type="text/javascript"> jQuery(function () { var link = "https://big5.qikan.com"; }); </script><fjtignoreurl><script type="text/javascript">var _userid = 'alibaba188@nlc.com';var _siteid =19;var _istoken = 1;var _model = 'Model03';</script><script src="http://tj.qikan.com/urchin.js" type="text/javascript"> </script><script type="text/javascript">WebPageSpeed =250; UrchinTrack();</script></fjtignoreurl></body></html>
jdbc:mysql://localhost/hibernate1root1234
org.hibernate.dialect.MySQLDialecttruetruecreate
。
3) 系統(tǒng)開發(fā)結(jié)構(gòu)
在系統(tǒng)設(shè)計中把所有對數(shù)據(jù)庫的操作都封裝在dao接口中,而dao.impl包具體實現(xiàn)了dao接口中的所有方法。其中service接口對外公開的是業(yè)務(wù)邏輯層的操作,service接口具體的實現(xiàn)方法封裝在service.impl包中,其抽象了不同層次,負責(zé)和不同數(shù)據(jù)庫打交道,dao是不用考慮數(shù)據(jù)庫的細節(jié)。這里采用的面向接口(抽象)編程的思想,其最大的好處就是靈活。
由于本系統(tǒng)的最大新穎之處在于調(diào)用Google Calendar API,其在calendar.jsp中有用于顯示日歷,并能顯示中國的節(jié)假日。如圖4所示。
由于Google Calendar具有免費的郵件和短信提醒[17],可以進入該日歷進行事件的設(shè)置,并設(shè)置短信的提醒。使有效信息及時傳達。這對于管理員來說,是非常必要的,使之不會因為繁瑣的事而遺忘,如圖5所示。
3 結(jié)束語
本員工管理系統(tǒng)是采用Java語言開發(fā),并使用輕量級、開源的三大框架Struts2、Spring、Hibernate開發(fā)而成,采用面向接口(抽象)編程的思想,這樣方便于系統(tǒng)功能的添加以及其他開發(fā)者的閱讀。這樣就大大提高系統(tǒng)的安全性以及后期的維護性。本系統(tǒng)最大不同點就是調(diào)用了Google Calendar API,使系統(tǒng)具備有其他人力資源管理系統(tǒng)不具備的功能,使系統(tǒng)更加的人性化。
參考文獻:
[1] 黃光芳.面向接口編程在三層架構(gòu)系統(tǒng)中的設(shè)計及應(yīng)用[J].計算機應(yīng)用與軟件,2009(6):133-135.
[2] 趙永暉.模型驅(qū)動方法在 Struts2 框架中的應(yīng)用與研究[J].電腦開發(fā)與應(yīng)用,2014(2):12-13.
[3] Praveen Gupta,Prof. M.C. Govil. MVC Design Pattern for the multi framework distributed applications using XML, spring and struts framework[J]. International Journal on Computer Science and Engineering,2010(24).
[4] 楊志勇.基于Struts2框架的網(wǎng)站信息內(nèi)容管理平臺的設(shè)計與實現(xiàn)[J].計算機與現(xiàn)代化,2012(8):98-100.
[5] 董慧慧.基于struts2攔截器的操作日志系統(tǒng)設(shè)計[J].計算機光盤軟件與應(yīng)用,2012(4):141-142.
[6] 黃義平,劉薛蒂,李斌勇.基于Hibernate的關(guān)聯(lián)映射研究[J].軟件導(dǎo)刊,2009(6):162-164.
[7] 肖輝輝,段艷明,蘭小機.基于Hibernate的XML數(shù)據(jù)存儲方法[J].計算機系統(tǒng)應(yīng)用,2009(10):189-192.
[8] 劉榮輝,薛冰.基于Annotation的Spring AOP系統(tǒng)設(shè)計[J].計算機應(yīng)用與軟件,2009(9):18-20.
[9] 張文勝.基于Annotation的Spring AOP日志處理的設(shè)計與實現(xiàn)[J].價值工程,2012(32):207-209.
[10] 胡銀保.Spring MVC設(shè)計中的IoC控制[J].無線互聯(lián)科技,2012(12):126-127.
[11] 《Google API大全》編委會.Google API大全[M].北京:電子工業(yè)出版社,2009:98-114.
[12] 張露,馬麗.數(shù)據(jù)庫設(shè)計[J].安陽工學(xué)院學(xué)報,2007(4):76-79.
[13] 單洪奇,沈利萍,劉利民.基于J2EE+MySQL+SSH2技術(shù)社交網(wǎng)的研究與實現(xiàn)[J].中國科技信息,2009(14):119-121.
[14] 王水,劉楊濤.MyEclipse開發(fā)SSH2應(yīng)用之“超光速”教程[J].電腦編程技巧與維護,2011(1):61-68.
[15] 王龍雪,邢薇.基于SSH2的應(yīng)用系統(tǒng)整合Reporting Services方案的研究與設(shè)計[J].自動化技術(shù)與應(yīng)用,2013(12):43-46.
[16] 劉艷春,洪曉慧.Struts2框架核心配置文件的研究與應(yīng)用[J].計算機技術(shù)與發(fā)展,2013(2):77-81.
[17] Broida, Rick. Use SMS to Add Events to Google Calendar[J].PC World, 2010,288.
jdbc:mysql://localhost/hibernate1root1234
org.hibernate.dialect.MySQLDialecttruetruecreate
。
3) 系統(tǒng)開發(fā)結(jié)構(gòu)
在系統(tǒng)設(shè)計中把所有對數(shù)據(jù)庫的操作都封裝在dao接口中,而dao.impl包具體實現(xiàn)了dao接口中的所有方法。其中service接口對外公開的是業(yè)務(wù)邏輯層的操作,service接口具體的實現(xiàn)方法封裝在service.impl包中,其抽象了不同層次,負責(zé)和不同數(shù)據(jù)庫打交道,dao是不用考慮數(shù)據(jù)庫的細節(jié)。這里采用的面向接口(抽象)編程的思想,其最大的好處就是靈活。
由于本系統(tǒng)的最大新穎之處在于調(diào)用Google Calendar API,其在calendar.jsp中有用于顯示日歷,并能顯示中國的節(jié)假日。如圖4所示。
由于Google Calendar具有免費的郵件和短信提醒[17],可以進入該日歷進行事件的設(shè)置,并設(shè)置短信的提醒。使有效信息及時傳達。這對于管理員來說,是非常必要的,使之不會因為繁瑣的事而遺忘,如圖5所示。
3 結(jié)束語
本員工管理系統(tǒng)是采用Java語言開發(fā),并使用輕量級、開源的三大框架Struts2、Spring、Hibernate開發(fā)而成,采用面向接口(抽象)編程的思想,這樣方便于系統(tǒng)功能的添加以及其他開發(fā)者的閱讀。這樣就大大提高系統(tǒng)的安全性以及后期的維護性。本系統(tǒng)最大不同點就是調(diào)用了Google Calendar API,使系統(tǒng)具備有其他人力資源管理系統(tǒng)不具備的功能,使系統(tǒng)更加的人性化。
參考文獻:
[1] 黃光芳.面向接口編程在三層架構(gòu)系統(tǒng)中的設(shè)計及應(yīng)用[J].計算機應(yīng)用與軟件,2009(6):133-135.
[2] 趙永暉.模型驅(qū)動方法在 Struts2 框架中的應(yīng)用與研究[J].電腦開發(fā)與應(yīng)用,2014(2):12-13.
[3] Praveen Gupta,Prof. M.C. Govil. MVC Design Pattern for the multi framework distributed applications using XML, spring and struts framework[J]. International Journal on Computer Science and Engineering,2010(24).
[4] 楊志勇.基于Struts2框架的網(wǎng)站信息內(nèi)容管理平臺的設(shè)計與實現(xiàn)[J].計算機與現(xiàn)代化,2012(8):98-100.
[5] 董慧慧.基于struts2攔截器的操作日志系統(tǒng)設(shè)計[J].計算機光盤軟件與應(yīng)用,2012(4):141-142.
[6] 黃義平,劉薛蒂,李斌勇.基于Hibernate的關(guān)聯(lián)映射研究[J].軟件導(dǎo)刊,2009(6):162-164.
[7] 肖輝輝,段艷明,蘭小機.基于Hibernate的XML數(shù)據(jù)存儲方法[J].計算機系統(tǒng)應(yīng)用,2009(10):189-192.
[8] 劉榮輝,薛冰.基于Annotation的Spring AOP系統(tǒng)設(shè)計[J].計算機應(yīng)用與軟件,2009(9):18-20.
[9] 張文勝.基于Annotation的Spring AOP日志處理的設(shè)計與實現(xiàn)[J].價值工程,2012(32):207-209.
[10] 胡銀保.Spring MVC設(shè)計中的IoC控制[J].無線互聯(lián)科技,2012(12):126-127.
[11] 《Google API大全》編委會.Google API大全[M].北京:電子工業(yè)出版社,2009:98-114.
[12] 張露,馬麗.數(shù)據(jù)庫設(shè)計[J].安陽工學(xué)院學(xué)報,2007(4):76-79.
[13] 單洪奇,沈利萍,劉利民.基于J2EE+MySQL+SSH2技術(shù)社交網(wǎng)的研究與實現(xiàn)[J].中國科技信息,2009(14):119-121.
[14] 王水,劉楊濤.MyEclipse開發(fā)SSH2應(yīng)用之“超光速”教程[J].電腦編程技巧與維護,2011(1):61-68.
[15] 王龍雪,邢薇.基于SSH2的應(yīng)用系統(tǒng)整合Reporting Services方案的研究與設(shè)計[J].自動化技術(shù)與應(yīng)用,2013(12):43-46.
[16] 劉艷春,洪曉慧.Struts2框架核心配置文件的研究與應(yīng)用[J].計算機技術(shù)與發(fā)展,2013(2):77-81.
[17] Broida, Rick. Use SMS to Add Events to Google Calendar[J].PC World, 2010,288.
jdbc:mysql://localhost/hibernate1root1234
org.hibernate.dialect.MySQLDialecttruetruecreate
。
3) 系統(tǒng)開發(fā)結(jié)構(gòu)
在系統(tǒng)設(shè)計中把所有對數(shù)據(jù)庫的操作都封裝在dao接口中,而dao.impl包具體實現(xiàn)了dao接口中的所有方法。其中service接口對外公開的是業(yè)務(wù)邏輯層的操作,service接口具體的實現(xiàn)方法封裝在service.impl包中,其抽象了不同層次,負責(zé)和不同數(shù)據(jù)庫打交道,dao是不用考慮數(shù)據(jù)庫的細節(jié)。這里采用的面向接口(抽象)編程的思想,其最大的好處就是靈活。
由于本系統(tǒng)的最大新穎之處在于調(diào)用Google Calendar API,其在calendar.jsp中有用于顯示日歷,并能顯示中國的節(jié)假日。如圖4所示。
由于Google Calendar具有免費的郵件和短信提醒[17],可以進入該日歷進行事件的設(shè)置,并設(shè)置短信的提醒。使有效信息及時傳達。這對于管理員來說,是非常必要的,使之不會因為繁瑣的事而遺忘,如圖5所示。
3 結(jié)束語
本員工管理系統(tǒng)是采用Java語言開發(fā),并使用輕量級、開源的三大框架Struts2、Spring、Hibernate開發(fā)而成,采用面向接口(抽象)編程的思想,這樣方便于系統(tǒng)功能的添加以及其他開發(fā)者的閱讀。這樣就大大提高系統(tǒng)的安全性以及后期的維護性。本系統(tǒng)最大不同點就是調(diào)用了Google Calendar API,使系統(tǒng)具備有其他人力資源管理系統(tǒng)不具備的功能,使系統(tǒng)更加的人性化。
參考文獻:
[1] 黃光芳.面向接口編程在三層架構(gòu)系統(tǒng)中的設(shè)計及應(yīng)用[J].計算機應(yīng)用與軟件,2009(6):133-135.
[2] 趙永暉.模型驅(qū)動方法在 Struts2 框架中的應(yīng)用與研究[J].電腦開發(fā)與應(yīng)用,2014(2):12-13.
[3] Praveen Gupta,Prof. M.C. Govil. MVC Design Pattern for the multi framework distributed applications using XML, spring and struts framework[J]. International Journal on Computer Science and Engineering,2010(24).
[4] 楊志勇.基于Struts2框架的網(wǎng)站信息內(nèi)容管理平臺的設(shè)計與實現(xiàn)[J].計算機與現(xiàn)代化,2012(8):98-100.
[5] 董慧慧.基于struts2攔截器的操作日志系統(tǒng)設(shè)計[J].計算機光盤軟件與應(yīng)用,2012(4):141-142.
[6] 黃義平,劉薛蒂,李斌勇.基于Hibernate的關(guān)聯(lián)映射研究[J].軟件導(dǎo)刊,2009(6):162-164.
[7] 肖輝輝,段艷明,蘭小機.基于Hibernate的XML數(shù)據(jù)存儲方法[J].計算機系統(tǒng)應(yīng)用,2009(10):189-192.
[8] 劉榮輝,薛冰.基于Annotation的Spring AOP系統(tǒng)設(shè)計[J].計算機應(yīng)用與軟件,2009(9):18-20.
[9] 張文勝.基于Annotation的Spring AOP日志處理的設(shè)計與實現(xiàn)[J].價值工程,2012(32):207-209.
[10] 胡銀保.Spring MVC設(shè)計中的IoC控制[J].無線互聯(lián)科技,2012(12):126-127.
[11] 《Google API大全》編委會.Google API大全[M].北京:電子工業(yè)出版社,2009:98-114.
[12] 張露,馬麗.數(shù)據(jù)庫設(shè)計[J].安陽工學(xué)院學(xué)報,2007(4):76-79.
[13] 單洪奇,沈利萍,劉利民.基于J2EE+MySQL+SSH2技術(shù)社交網(wǎng)的研究與實現(xiàn)[J].中國科技信息,2009(14):119-121.
[14] 王水,劉楊濤.MyEclipse開發(fā)SSH2應(yīng)用之“超光速”教程[J].電腦編程技巧與維護,2011(1):61-68.
[15] 王龍雪,邢薇.基于SSH2的應(yīng)用系統(tǒng)整合Reporting Services方案的研究與設(shè)計[J].自動化技術(shù)與應(yīng)用,2013(12):43-46.
[16] 劉艷春,洪曉慧.Struts2框架核心配置文件的研究與應(yīng)用[J].計算機技術(shù)與發(fā)展,2013(2):77-81.
[17] Broida, Rick. Use SMS to Add Events to Google Calendar[J].PC World, 2010,288.