国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MVC的高職院校畢業(yè)生信息管理系統(tǒng)的設(shè)計與實現(xiàn)

2013-12-29 00:00:00強鶴群錢春花吳亞美趙山山
電腦知識與技術(shù) 2013年12期

摘要:該文以蘇州農(nóng)業(yè)職業(yè)技術(shù)學(xué)院為例,基于MVC架構(gòu)對高職院校畢業(yè)生管理系統(tǒng)的設(shè)計和實現(xiàn)進行了探討,主要內(nèi)容如下:1)設(shè)計了利用JAVA Web技術(shù)搭建信息管理平臺的方式來解決畢業(yè)生信息網(wǎng)絡(luò)化管理問題。2)研究了系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù),包括MVC設(shè)計模式,Hibernate數(shù)據(jù)持久化,Struts 2 框架,JSP視圖層開發(fā)。3)利用MyEclipse、Tomcat、SQL Server等工具了完成了原型系統(tǒng)的開發(fā)。該文所設(shè)計的系統(tǒng)已經(jīng)為蘇州農(nóng)業(yè)職業(yè)技術(shù)學(xué)院的畢業(yè)生信息管理提供了有效的借鑒。

關(guān)鍵詞:畢業(yè)生信息管理;MVC設(shè)計模式;Struts 2框架;Hibernate框架

中圖分類號:TP311 文獻標(biāo)識碼:A 文章編號:1009-3044(2013)12-2807-03

隨著現(xiàn)代網(wǎng)絡(luò)技術(shù)和高校校園網(wǎng)的建設(shè)與發(fā)展,基于校園內(nèi)局域網(wǎng)和Internet的應(yīng)用系統(tǒng)開發(fā)正蓬勃發(fā)展,高校管理工作的信息化、數(shù)字化研究與實踐越來越受到重視。畢業(yè)生信息管理工作是高職院校教育教學(xué)管理的重要組成部分,隨著國內(nèi)各高校辦學(xué)規(guī)模的不斷擴大,高校畢業(yè)生數(shù)量大量增加,建立高校畢業(yè)生信息管理系統(tǒng)日趨重要和必要。

在上述應(yīng)用需求背景下,本研究對蘇州農(nóng)業(yè)職業(yè)技術(shù)學(xué)院畢業(yè)生信息管理現(xiàn)狀進行了較為深入的調(diào)研和分析,在參考業(yè)內(nèi)各種就業(yè)平臺設(shè)計基礎(chǔ)上,給出了基于MVC的高職畢業(yè)生信息管理系統(tǒng)的設(shè)計與實現(xiàn)。

1 MVC設(shè)計模式的應(yīng)用

MVC是三個單詞的縮寫,分別為: 模型(Model),視圖(View)和控制器(Controller)。其架構(gòu)如圖1所示。

模型(Model):表示數(shù)據(jù)和業(yè)務(wù)處理。由于應(yīng)用于模型的代碼只需要寫一次就可以被多個視圖重用,所以減少了代碼的重復(fù)性。對應(yīng)的組件是JavcBean(Java類)。視圖(View):是用戶看到并與之交互的界面。MVC一個大的好處是它能為應(yīng)用程序處理很多不同的視圖。對應(yīng)的組件是JSP或HTML文件??刂破鳎–ontroller):接受用戶的輸入并調(diào)用模型和視圖區(qū)完成用戶的請求。對應(yīng)的組件是Servlet。

本文在系統(tǒng)設(shè)計開發(fā)中采用JavaBean和Hibernate實現(xiàn)模型層開發(fā),采用Struts 2實現(xiàn)控制層開發(fā),采用JSP技術(shù)實現(xiàn)視圖層開發(fā)。

2 基于Hibernate實現(xiàn)模型層開發(fā)和數(shù)據(jù)持久化

Hibernate是一個優(yōu)秀的Java持久化方案,是當(dāng)今主流的對象——關(guān)系映射工具。該文在數(shù)據(jù)持久化方面就是使用Hibernate技術(shù)的。

2.1 使用HQL實現(xiàn)數(shù)據(jù)庫的基本操作

HQL(Hibernate Query Languge,Hibernate 查詢語言)查詢:是一種面向?qū)ο蟮牟樵冋Z言,其中沒有表和字段的概念,只有類、對象和屬性的概念。

下面是使用HQL來根據(jù)屬性查詢學(xué)生信息的方法代碼:

public List findStudentsByProperty(String p,Object value){

List l = null;

try {

String queryString = "from Student s where s." + p + "= ?";

Query queryObject = getSession().createQuery(queryString);

queryObject.setParameter(0, value);

l = queryObject.list();

} catch (RuntimeException re) {

throw re;

} finally{

closeSession();

}return l;

}

2.2 Hibernate高級技術(shù)應(yīng)用

Hibernate提供了多種功能強大的技術(shù),該文在系統(tǒng)設(shè)計開發(fā)過程中主要用到了數(shù)據(jù)延遲加載方式和Criteria 查詢技術(shù)。

Hibernate提供多種數(shù)據(jù)加載策略,常用的有:立即加載、延遲加載。該文在設(shè)計過程中分別采用了這兩種方式進行了運行測試,發(fā)現(xiàn)使用延遲加載方法可以有效的提高系統(tǒng)運行效率,因為數(shù)據(jù)的即時加載需要進行數(shù)據(jù)庫對象的讀取,需要一定的系統(tǒng)性能開銷。該文在實際應(yīng)用時采用了數(shù)據(jù)的延遲加載策略。

Criteria 查詢采用面向?qū)ο蠓绞椒庋b查詢條件,又稱為對象查詢。它能夠?qū)QL 語句進行封裝,采用對象的方式來組合各種查詢條件。Criteria由Hibernate Session進行創(chuàng)建,由Hibernate 自動產(chǎn)生SQL 查詢語句。下面展示了本文所采用Criteria 查詢來進行用戶登錄操作的典型代碼片段:

SessionFactory sessionFactory = new Configuration().configure()

.buildSessionFactory();

Session session = sessionFactory.openSession();

Criteria criteria = session.createCriteria(User.class);

List result = criteria.list();

Iterator it = result.iterator();

while (it.hasNext()) {

User user = (User) it.next();

}session.close();

sessionFactory.close();

return user;

3 基于Struts2實現(xiàn)控制層開發(fā)

Struts 2是一款優(yōu)雅的、可擴展性很強的框架,是在 struts 和WebWork的技術(shù)基礎(chǔ)上進行了合并的全新的Struts 2框架。

本文所使用Struts 2 開發(fā)系統(tǒng)的基本步驟分為以下6步:1)加載Struts2 類庫;2)配置web.xml;3)開發(fā)視圖層頁面;4)開發(fā)控制層Action;5)配置Struts 2的配置文件(struts.xml);6)部署、運行項目。其中,配置web.xml,開發(fā)Action是Struts 2使用過程中的重點,下面具體闡述一下本文在系統(tǒng)設(shè)計過程中這兩個步驟的具體實現(xiàn)。

3.1 配置web.xml

struts2

org.apache.struts2.dispatcher.ng.filter.

StrutsPrepareAndExecuteFilter

struts2

/*

Struts2不同版本的核心控制器是不同的,該文在系統(tǒng)設(shè)計開發(fā)過程中都采用Struts 2.0版本,配置為FilterDispatcher。

3.2 開發(fā)Action

Struts 2中的Action類通常都實現(xiàn)com.opensymphony.xwork2.Action接口,并實現(xiàn)該接口中的execute()方法;所有的Action必須返回一個字符串類型的結(jié)果代碼,以標(biāo)識要呈現(xiàn)給用戶的結(jié)果。在Struts2中,可以直接使用Action類的屬性來接收用戶的輸入。不過,Struts2框架支持普通的Java類作為Action,只需要該類具有約定的處理請求的方法(返回類型為String的無參數(shù)的pubic方法)即可。

4 基于JSP技術(shù)開發(fā)View層

JSP(Java Server Pages)是指:在HTML中嵌入Java腳本語言,由應(yīng)用服務(wù)器中的JSP引擎來編譯和執(zhí)行嵌入的Java腳本語言命令,然后將生成的整個頁面信息返回給客戶端。該文在系統(tǒng)設(shè)計開發(fā)過程中采用Tomcat 6.0作為Web容器。

在JSP頁面中使用模型層的JavaBean存在兩個局限:獲取JavaBean屬性必須要實例化;獲取數(shù)據(jù)必須強制類型轉(zhuǎn)換。為了避免這個缺點,簡化代碼的復(fù)雜度,提高系統(tǒng)代碼的效率,我們在JSP頁面中使用EL表達式來處理。EL的語法是:${EL exprission}、${bean.name} 或${bean['name']}。當(dāng)然在使用EL表達式時需要注意其作用域,常見的作用域有四個page、request、session、application

雖然EL表達式可以訪問JavaBean的屬性,但是并不能實現(xiàn)在JSP中進行邏輯判斷,因而要結(jié)合使用JSTL(JavaServerPages Standard Tag Library,JSP標(biāo)準(zhǔn)標(biāo)簽庫)。

一般使用JSTL的步驟分為以下三步:1、創(chuàng)建Web工程,選擇JSTL1.1;2、在JSP頁面添加taglib指令:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>;3、使用JSTL標(biāo)簽:JSTL標(biāo)準(zhǔn)標(biāo)簽庫分為三種,通用標(biāo)簽、條件標(biāo)簽、迭代標(biāo)簽。

5 原型系統(tǒng)實現(xiàn)

本文針對MVC設(shè)計模式的高職院校畢業(yè)生信息管理系統(tǒng)的設(shè)計和實現(xiàn)進行了研究,利用MyEclipse8.5、Tomcat6.0、SQL Server 2008等工具了完成了原型系統(tǒng)的開發(fā)。圖2、圖3、圖4、圖5分別展示了原型系統(tǒng)的典型頁面。下一步將在改進系統(tǒng)框架、完善數(shù)據(jù)設(shè)計、提高系統(tǒng)安全性、提高系統(tǒng)性能四個方面展開進一步研究。

校畢業(yè)生信息管理系統(tǒng)的設(shè)計與實現(xiàn)-229\image3.jpeg>

校畢業(yè)生信息管理系統(tǒng)的設(shè)計與實現(xiàn)-229\image5.png>

參考文獻:

[1] 劉濤.畢業(yè)生信息管理系統(tǒng)的研究與開發(fā)[D].呼和浩特:內(nèi)蒙古大學(xué),2011.

[2] 孫佳帝.基于JSP技術(shù)的畢業(yè)生信息管理系統(tǒng)的設(shè)計與實現(xiàn)[D].長春:吉林大學(xué),2009.

[3] 盧俊瑋,常琳,陳昀錕.MVC模式與ASP.NET MVC框架的技術(shù)研究[J].電腦知識與技術(shù),2010(19).

[4] 楊曉軍. MVC Web開發(fā)學(xué)習(xí)實錄[M].北京:清華大學(xué)出版社,2011.

黄石市| 嵊泗县| 宿迁市| 宜都市| 敦化市| 乳山市| 富锦市| 久治县| 田林县| 勃利县| 两当县| 徐汇区| 永川市| 阿图什市| 新民市| 仁寿县| 中宁县| 棋牌| 安塞县| 白朗县| 澄迈县| 新建县| 乌兰察布市| 泌阳县| 泸溪县| 东阳市| 双江| 扎鲁特旗| 松潘县| 延吉市| 南澳县| 论坛| 颍上县| 华亭县| 灵宝市| 成安县| 仪陇县| 宝兴县| 岚皋县| 大足县| 柳江县|