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

大學(xué)生就業(yè)統(tǒng)計(jì)分析系統(tǒng)

2014-04-29 00:44:03張艷璐等
計(jì)算機(jī)時(shí)代 2014年1期
關(guān)鍵詞:頁面數(shù)據(jù)庫用戶

張艷璐等

摘 要: 傳統(tǒng)模式下的高校畢業(yè)生信息管理效率低、保密性差;而基于面向?qū)ο驤ava語言與ExtJS Web開發(fā)技術(shù)的學(xué)生就業(yè)信息管理系統(tǒng),能滿足數(shù)據(jù)信息集中管理和維護(hù)、實(shí)時(shí)查詢的需求,提高管理的效率和質(zhì)量。本系統(tǒng)為B/S系統(tǒng),采用tomcat進(jìn)行部署運(yùn)行,所有的頁面統(tǒng)一為JSP,后臺(tái)使用主流的SSH框架,運(yùn)用MVC模式進(jìn)行系統(tǒng)設(shè)計(jì)。

關(guān)鍵詞: 信息管理系統(tǒng); Java; ExtJS Web; B/S系統(tǒng); SSH框架; MVC

中圖分類號(hào):TP311.1 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2014)01-38-04

0 引言

目前,將Web技術(shù)和數(shù)據(jù)庫技術(shù)相結(jié)合,開發(fā)動(dòng)態(tài)交互式數(shù)據(jù)庫網(wǎng)頁,已成為當(dāng)今Web技術(shù)研究的熱點(diǎn);高校畢業(yè)生數(shù)量急劇增加,有關(guān)高校畢業(yè)生的各種信息量也成倍增長,高校畢業(yè)生信息的管理工作量與工作難度也在增長。本文提出一種基于Web的畢業(yè)生就業(yè)管理系統(tǒng)的方案,它對于學(xué)校的決策者和管理者來說都至關(guān)重要,能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍D苡行У貛椭鷮W(xué)校和老師掌握高校畢業(yè)生的情況,為高校畢業(yè)生提供成績、就業(yè)信息等方面的查詢。

1 系統(tǒng)總體架構(gòu)

本系統(tǒng)采用主流的Java EE三層結(jié)構(gòu),分為表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)服務(wù)層。三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問等工作放在中間層處理,客戶端不直接與數(shù)據(jù)庫交互,而是通過控制層與中間層建立連接,再由中間層與數(shù)據(jù)庫交互。系統(tǒng)的表現(xiàn)層全部使用JSP頁面來顯示,結(jié)合EL表達(dá)式以及JS技術(shù)來生成頁面顯示效果。中間層采用Struts 2+Spring 3+Hibernate 2框架,為了對控制層與業(yè)務(wù)邏輯層進(jìn)行分離,又可按以下細(xì)分。

⑴ Web層:即MVC模式里面的Controller,主要負(fù)責(zé)對控制層與業(yè)務(wù)邏輯層,調(diào)用業(yè)務(wù)邏輯層的分離,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層,本系統(tǒng)的MVC框架主要使用Struts 2。

⑵ Service層(業(yè)務(wù)邏輯層):主要負(fù)責(zé)實(shí)現(xiàn)各種業(yè)務(wù)邏輯,對DAO對象進(jìn)行封裝。

⑶ DAO層(數(shù)據(jù)訪問對象層):負(fù)責(zé)與持久化對象交互,實(shí)現(xiàn)數(shù)據(jù)的增、刪、改、查原子操作。

⑷ Domain層(持久化對象域?qū)樱簩㈥P(guān)系型數(shù)據(jù)庫的數(shù)據(jù)映射成對象,可直接通過面向?qū)ο蠓绞讲僮鲾?shù)據(jù)庫,用Hibernate的ORM框架實(shí)現(xiàn)該層。

MVC模式[1]下,所有從前臺(tái)返回的用戶請求都由Struts 2的Action負(fù)責(zé)攔截,然后通過Spring提供的IOC(控制反轉(zhuǎn))功能,定位Spring容器中的Service對象,來處理具體的用戶請求,如圖1所示。

1.1 JSP技術(shù)

JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì)。JSP頁面由HTML代碼和嵌入其中的Java代碼所組成,服務(wù)器在頁面被客戶端請求以后對Java代碼進(jìn)行處理,然后將生成的結(jié)果同HTML代碼返回給客戶端。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁所需要的功能。

1.2 Struts 2技術(shù)

Struts 2以WebWork[2]為核心,采用攔截器的機(jī)制來處理用戶請求,且基于Model(提供內(nèi)部數(shù)據(jù))-View(顯示數(shù)據(jù))-Controller(決定執(zhí)行過程)架構(gòu)。Web應(yīng)用程序啟動(dòng)時(shí),瀏覽器所有請求都被提交給ActionServlet處理;提交表單時(shí),ActionForm對象將被創(chuàng)建,并被填入表單中相應(yīng)的數(shù)據(jù);ActionServlet根據(jù)struts-config.xml文件中的配置,如果需要驗(yàn)證,則成功后選擇將請求轉(zhuǎn)發(fā)給某個(gè)Action,若Action對象不存在則先創(chuàng)建,再調(diào)用其execute()方法,即從ActionForm對象中獲取數(shù)據(jù),返回一個(gè)ActionForward對象,再由其指向的JSP組件生成動(dòng)態(tài)網(wǎng)頁。

1.3 Spring框架

基于JavaBean的Spring是一個(gè)開源框架,它的用途不僅限于服務(wù)器端的開發(fā),從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益,即Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。

1.4 Hibernate框架

Hibernate中提供了兩級(jí)Cache,第一級(jí)別的緩存是Session級(jí)別的緩存,它是屬于事務(wù)范圍的緩存。這一級(jí)別的緩存是由hibernate管理的,一般情況下無需進(jìn)行干預(yù);第二級(jí)別的緩存是SessionFactory級(jí)別的緩存,它是屬于進(jìn)程范圍或群集范圍的緩存,這一級(jí)別的緩存可以進(jìn)行配置和更改,并且可以動(dòng)態(tài)加載和卸載。

2 就業(yè)統(tǒng)計(jì)分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

采用面向?qū)ο蟮姆治龇椒╗3]對系統(tǒng)進(jìn)行需求分析,按不同角色分類,可劃分為系統(tǒng)管理員對系統(tǒng)的需求、學(xué)生對系統(tǒng)的需求兩大功能需求,再建立用例模型,并考慮界面需求進(jìn)行系統(tǒng)設(shè)計(jì),主要涉及模塊結(jié)構(gòu)、類、數(shù)據(jù)庫設(shè)計(jì),界面是基于ExtJS Web技術(shù)的[4]。

2.1 模型結(jié)構(gòu)及類模型

模型結(jié)構(gòu)及類模型如表1所示。

從表1中的模塊看,至少需要五個(gè)類:公司基本信息類,公司招聘信息類,學(xué)生類,學(xué)生求職意向類和學(xué)生就業(yè)信息類,這些類之間的基本關(guān)系如圖2所示。

2.2 數(shù)據(jù)庫設(shè)計(jì)

分析本系統(tǒng)所涉及到的實(shí)體,主要包括公司基本信息、公司招聘信息、學(xué)生基本信息、學(xué)生求職信息、學(xué)生就業(yè)信息。如圖3所示,表為一個(gè)實(shí)體,表里面的字段屬性(如數(shù)據(jù)庫表company_info表示公司的基本信息,里面的company_name表示公司的名稱),表中帶虛線的箭頭代表表之間的依賴關(guān)系(如company_recruit中的recruit_company字段依賴于company_info數(shù)據(jù)庫表)[5]。

2.3 系統(tǒng)框架搭建

在Eclipse下搭建SSH框架,對Struts 2、Spring、Hibernate三者進(jìn)行整合:在Eclipse下新建Web Project;導(dǎo)入Struts 2、Spring、Hibernate類庫,將jar包(已解決他們之間的沖突)復(fù)制到項(xiàng)目的WebRoot/WEB-INF/lib目錄下;在web.xml文件中增加struts 2所需的核心控制器和spring監(jiān)聽,拷貝struts.xml文件到src根目錄下并進(jìn)行相應(yīng)的常量配置(如攔截器的配置);采用spring依賴注入[6]。

2.4 登錄界面

公司用戶進(jìn)入登錄界面后,可以在中間看到最新的公告,點(diǎn)擊相應(yīng)的鏈接,可以得到詳細(xì)信息和更多的公告;用戶輸入正確的用戶名和密碼后會(huì)根據(jù)用戶的權(quán)限進(jìn)入后臺(tái)。登錄流程為:用戶發(fā)送登錄請求到系統(tǒng)的控制層,先通過數(shù)據(jù)庫的查詢,判斷用戶輸入的用戶名是否存在和用戶輸入的密碼是否正確,如果用戶名和密碼都正確,則進(jìn)行權(quán)限判斷,否則,返回到登錄頁面。系統(tǒng)根據(jù)用戶的不同權(quán)限,分別進(jìn)入到管理員后臺(tái)和學(xué)生后臺(tái)。

2.5 公司基本信息管理

公司基本信息管理包括對公司信息的添加、修改、刪除,點(diǎn)擊公司管理導(dǎo)航欄下的公司列表可以顯示所有公司。該列表顯示了公司名稱,公司地址以及公司類型等(如圖5所示),表格的上面可以輸入各種條件的組合,點(diǎn)擊查詢后可以找到符合條件的公司,查詢代碼演示如下:

if (!companyInfo.getCompanyName().equals(""))

query.add("companyName like '%"+companyInfo

.getCompanyName()

+ "%' ");

if (!companyInfo.getCompanyAddr().equals(""))

query.add(" companyAddr like '%" + companyInfo

.getCompanyAddr()

+ "%' ");

……

上述query用來存儲(chǔ)HQL語句中的各種查詢條件,再經(jīng)過適當(dāng)?shù)靥幚恚詈髸?huì)得到一個(gè)完整的HQL查詢語句,并由DAO層執(zhí)行此HQL語句,得出查詢結(jié)果。

2.6 公司招聘管理

公司招聘管理負(fù)責(zé)維護(hù)該系統(tǒng)所管理的所有公司發(fā)布的招聘信息,包括瀏覽公司的招聘列表,增加、刪除和修改招聘信息等;一個(gè)項(xiàng)招聘信息包括招聘的公司、招聘職位、招聘待遇和所需技術(shù)等信息。查看某個(gè)公司信息如圖6所示。

當(dāng)點(diǎn)擊“查看詳情”時(shí),可看到該公司的招聘信息。

2.7 學(xué)生就業(yè)信息統(tǒng)計(jì)

點(diǎn)擊在學(xué)生統(tǒng)計(jì)模塊下的就業(yè)統(tǒng)計(jì),默認(rèn)會(huì)顯示所有學(xué)生的簽約率、違約率、待業(yè)率,并且通過下拉菜單選擇相應(yīng)的分類統(tǒng)計(jì),如圖7所示的為按專業(yè)統(tǒng)計(jì)結(jié)果。

圖7的列表中的統(tǒng)計(jì)信息都是通過后臺(tái)業(yè)務(wù)層對數(shù)據(jù)里面的數(shù)據(jù)進(jìn)行查詢和計(jì)算得出來的。例如,要統(tǒng)計(jì)某個(gè)專業(yè)的待業(yè)率,在后臺(tái)收到請求后,先判斷統(tǒng)計(jì)是不是按照專業(yè)來的,然后通過數(shù)據(jù)庫查詢得到專業(yè)的名稱,接著判斷統(tǒng)計(jì)的是不是待業(yè)率,如果是,則通過查詢數(shù)據(jù)庫的結(jié)果計(jì)算出專業(yè)的待業(yè)率,而待業(yè)人數(shù)和總?cè)藬?shù)則通過使用多表之間的組合查詢而得到,求得前者的主要代碼如下:

HibernateTemplate htp=this.getHibernateTemplate();

String hql="select count(*) from StudentInfo si, StudentEmploy se

where se.status=0"

+ "and si.studentName=se.studentName"

+ "and si.studentMajor='"+major+"'";

return (Long) (htp.find(hql).get(0));

代碼中HibernateTemplate是一個(gè)Hibernate的模板對象,里面的數(shù)據(jù)庫連接等底層實(shí)現(xiàn)都已經(jīng)封裝好,可以直接通過調(diào)用它的相關(guān)方法來對數(shù)據(jù)庫表進(jìn)行操作,se.status=0表示為待業(yè)狀態(tài)。執(zhí)行上述代碼可得到某個(gè)專業(yè)的待業(yè)人數(shù),再通過待業(yè)人數(shù)除以該專業(yè)總?cè)藬?shù)得出該專業(yè)的待業(yè)率。

2.8 就業(yè)匹配模塊

就業(yè)匹配是指,能夠按照企業(yè)招聘信息、畢業(yè)生求職信息和畢業(yè)生成績等基本信息進(jìn)行自動(dòng)智能匹配,力求使畢業(yè)生能夠找到合適的崗位,從而減輕企業(yè)和學(xué)生的工作量。例如,系統(tǒng)根據(jù)輸入的學(xué)生姓名,通過數(shù)據(jù)庫的查詢,得到此學(xué)生的求職意向,然后在業(yè)務(wù)層根據(jù)具體的匹配規(guī)則對公司的求職信息進(jìn)行篩選,該匹配的部分演示代碼如下:

if (!studentHunt.getHuntPost().equals(""))

query.add("recruitPost like '%"+studentHunt.getHuntPost()

+ "%' ");

if (studentHunt.getHuntTreate()!=null)

query.add("recruitTreate>="+studentHunt.getHuntTreate());

}

點(diǎn)擊導(dǎo)航欄下面的就業(yè)匹配,在上面的文本框輸入學(xué)生姓名點(diǎn)擊匹配后,系統(tǒng)會(huì)根據(jù)學(xué)生的求職意向,從所有公司的招聘信息中招出符合條件的招聘信息顯示出來,如圖8所示。

3 結(jié)束語

SSH為Struts+Spring+Hibernate的一個(gè)集成框架,是目前較流行的一種Web應(yīng)用程序開源框架,且struts的view層標(biāo)簽豐富可操作性強(qiáng),很適合用戶體驗(yàn)。本文在這個(gè)框架基礎(chǔ)上,采用了面向?qū)ο蟮腏ava語言分析并實(shí)現(xiàn)學(xué)生與公司的需求,使層次和結(jié)構(gòu)更加清晰,便于程序的編寫;采用與后臺(tái)技術(shù)無關(guān)且功能豐富的ExtJs技術(shù)進(jìn)行頁面的設(shè)計(jì),使設(shè)計(jì)更加完美。

參考文獻(xiàn):

[1] 寇毅,吳力文.基于MVC設(shè)計(jì)模式的Struts框架的應(yīng)用方法[M].計(jì)算

機(jī)應(yīng)用,2003.23(11):91-9

[2] 李剛.Struts2權(quán)威指南—基于WebWork核心的MVC開發(fā)[M].電子

工業(yè)出版社,2007.

[3] 牛麗平,郭新志,宋強(qiáng),楊繼萍等.UML面向?qū)ο笤O(shè)計(jì)與分析基礎(chǔ)教程[M].

清華大學(xué)出版社,2007.

[4] 張祖良,孫純,肖景海.Learning Ext JS[D].人民郵政出版社,2009.

[5] 邱壯志劍,宋建民等.數(shù)據(jù)庫原理與SQL Server[M].高等教育出版社,

2008.

[6] 楊俊生,唐琳,張坤編.Java Web開發(fā)實(shí)踐教程[M].清華大學(xué)出版社,

2010.

猜你喜歡
頁面數(shù)據(jù)庫用戶
大狗熊在睡覺
刷新生活的頁面
數(shù)據(jù)庫
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數(shù)據(jù)庫
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數(shù)據(jù)庫
數(shù)據(jù)庫
如何獲取一億海外用戶
主站蜘蛛池模板: 国产精品护士| 国产精品亚洲欧美日韩久久| 99久久精品久久久久久婷婷| jijzzizz老师出水喷水喷出| 91 九色视频丝袜| 亚洲αv毛片| 国产99欧美精品久久精品久久| 精品少妇人妻无码久久| 国产原创演绎剧情有字幕的| 在线观看精品国产入口| 午夜福利视频一区| 国产99精品久久| 欧美亚洲第一页| 欧美色香蕉| 91娇喘视频| 99中文字幕亚洲一区二区| 亚洲Av综合日韩精品久久久| 无码专区在线观看| 免费在线看黄网址| 亚洲另类第一页| 成人国产精品一级毛片天堂| 国产成人艳妇AA视频在线| 国产第一页第二页| 精品久久久久久中文字幕女| 久久综合九九亚洲一区| 伊在人亚洲香蕉精品播放| 成人一级黄色毛片| 制服丝袜国产精品| 久久99这里精品8国产| 狂欢视频在线观看不卡| 男人天堂亚洲天堂| 久久精品91麻豆| 亚洲码一区二区三区| 黄色免费在线网址| 国产精品毛片一区| 成人av专区精品无码国产| 99久久国产综合精品2020| 又爽又黄又无遮挡网站| 亚洲,国产,日韩,综合一区| 亚洲欧美一级一级a| 免费中文字幕在在线不卡| 色婷婷色丁香| 呦视频在线一区二区三区| 欧美精品亚洲精品日韩专区va| 国产成人乱无码视频| 女人毛片a级大学毛片免费| 在线一级毛片| 毛片最新网址| 国内精品久久久久久久久久影视| 久操中文在线| 亚洲高清在线天堂精品| 欧美精品高清| 日本欧美在线观看| 欧美日韩成人| 亚洲国产欧美目韩成人综合| 国模私拍一区二区三区| www.99在线观看| 中字无码精油按摩中出视频| 久久精品国产一区二区小说| 2024av在线无码中文最新| 婷五月综合| 韩日无码在线不卡| 久久综合一个色综合网| 一本一道波多野结衣av黑人在线| 亚洲综合精品香蕉久久网| 视频一区亚洲| 91一级片| 成人免费一级片| 天堂网亚洲系列亚洲系列| 久久大香香蕉国产免费网站| 成人福利在线视频免费观看| 国产精品美女免费视频大全| 国产手机在线小视频免费观看| 综合久久久久久久综合网| 国产精品成人一区二区| 5555国产在线观看| 亚洲成a人片在线观看88| 国产无码高清视频不卡| 真实国产乱子伦高清| 欧美视频在线观看第一页| 亚洲精品麻豆| 亚洲开心婷婷中文字幕|