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

Struts技術(shù)在科研管理系統(tǒng)中的應(yīng)用

2011-10-31 11:21:18唐春玲胡方霞李惠玲
關(guān)鍵詞:用戶模型

唐春玲 胡方霞 李惠玲 張 燕

(重慶工商職業(yè)學(xué)院,重慶 400052)

Struts技術(shù)在科研管理系統(tǒng)中的應(yīng)用

唐春玲 胡方霞 李惠玲 張 燕

(重慶工商職業(yè)學(xué)院,重慶 400052)

分析MVC設(shè)計模式和Struts的工作原理,針對科研管理系統(tǒng)的特點,在系統(tǒng)中采用Struts技術(shù),并通過實例介紹其在應(yīng)用程序中的具體應(yīng)用。

Struts;MVC;科研管理系統(tǒng);B/S

Struts框架是全世界第一個發(fā)布的MVC框架,它由Apache Software Foundation組織發(fā)布。Struts1框架采用MVC模式將程序代碼分為三部分,把應(yīng)用軟件的輸入、處理和輸出分成不同組件來實現(xiàn),因此開發(fā)、管理相對容易。本文設(shè)計基于Struts技術(shù)的Web應(yīng)用程序。

1 Struts框架

目前大多數(shù)開發(fā)系統(tǒng)存在系統(tǒng)結(jié)構(gòu)復(fù)雜,耦合性高,修改、維護困難等問題,主要在于頁面邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)邏輯糅合在一起所導(dǎo)致。Struts框架采用MVC模式將程序代碼分為三部分,把應(yīng)用軟件的輸入、處理和輸出分成不同組件來實現(xiàn),因此開發(fā)、管理相對容易。

1.1 MVC介紹

MVC(Model-View-Controller)是模型-視圖-控制器的簡稱[1],它將系統(tǒng)分為三個模塊:模型(Model)、視圖(View)和控制器(Controller)(圖 1)[2]。

(1)模型:模型是應(yīng)用程序的主題部分。模型表示業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯。一個模型能為多個視圖提供數(shù)據(jù),提高了應(yīng)用的可重用性。

(2)視圖:視圖是用戶與系統(tǒng)交互的界面。視圖向用戶顯示相關(guān)數(shù)據(jù),并接受用戶的輸入,但視圖并不進行任何實際的業(yè)務(wù)處理。對于基于請求/響應(yīng)方式的Web應(yīng)用,模型位于服務(wù)器端,視圖位于瀏覽器端。

(3)控制器:控制器接受用戶的輸入并調(diào)用模型和視圖去完成用戶的請求。當(dāng)Web用戶向服務(wù)器發(fā)送HTML請求時,控制器接受請求并調(diào)用相應(yīng)的模型組件去處理請求,然后調(diào)用相應(yīng)的視圖顯示模型返回的數(shù)據(jù)。

圖1 MVC模式

1.2 框架介紹

Structs1是在JSP Model2基礎(chǔ)上實現(xiàn)了一個MVC框架。在Structs1框架中,MVC中的視圖(View)部分由一組 JSP文件構(gòu)成。MVC中的模型(Model)是由底層的業(yè)務(wù)邏輯組件充當(dāng),業(yè)務(wù)邏輯方法的實現(xiàn)由JavaBean組件完成。控制器(Controller)由兩個部分組成:核心控制器和業(yè)務(wù)控制器。其中核心控制器是ActionServlet,由Struts1框架提供;業(yè)務(wù)邏輯控制器是用戶自定義的Action,由應(yīng)用開發(fā)者提供[3-4]。

Struts的工作流程為:

(1)整個應(yīng)用由客戶端請求驅(qū)動;

(2)當(dāng)客戶端向Web應(yīng)用發(fā)送請求時,請求將被Struts1的核心控制器ActionServlet攔截;

(3)ActionServlet根據(jù)請求決定是否需要調(diào)用業(yè)務(wù)邏輯控制器處理用戶請求(實際上,業(yè)務(wù)邏輯控制器還是控制器,它只是負責(zé)調(diào)用模型來處理用戶請求);

(4)當(dāng)用戶請求處理完成后,其處理結(jié)果通過JSP呈現(xiàn)給用戶,程序運行流程圖如圖2所示[5]。

圖2 Struts程序運行流程

2 系統(tǒng)設(shè)計與開發(fā)

系統(tǒng)采用B/S結(jié)構(gòu)即瀏覽器/服務(wù)器結(jié)構(gòu)。系統(tǒng)配置如下:

WEB服務(wù)器:Tomcat6

數(shù)據(jù)庫:SQL Server2005。

JAVA開發(fā)工具:MyEclipse8.6+JDK1.6其中使用到Struts技術(shù),Herbernate等技術(shù)。

客 戶 端 :Netscape Navigator或 者 Internet Explorer。

2.1 功能模塊介紹

本系統(tǒng)以項目申報為主,總體功能結(jié)構(gòu)如下:項目管理模塊,科研成果管理模塊,專家管理模塊,相關(guān)下載和用戶管理模塊。

(1)項目管理模塊

項目管理模塊分為科研活動管理、項目申報兩個子模塊。科研活動管理子模塊的功能是設(shè)置學(xué)校每次科研活動申報時間等信息,并可查詢和修改。項目申報子模塊的功能是查詢每個項目的申報、審批、立項、進度等,還可以對經(jīng)費進行管理。經(jīng)費管理包括經(jīng)費來源、經(jīng)費使用計劃和實際使用情況等。

(2)科研成果管理模塊

該模塊完成對學(xué)校每個部門科研項目的匯總。

(3)專家管理模塊

該模塊可設(shè)置科研活動中的評審專家,并為評審專家分組,為某個項目指定專家,收集專家意見等。

(4)相關(guān)下載模塊

該模塊可以對科研活動中使用的文件表格進行下載。

(5)用戶管理模塊

該模塊下分個人管理、審批管理兩個子模塊。個人管理可以修改個人信息和密碼。審批管理可以對當(dāng)前注冊用戶進行審批并賦予相應(yīng)的角色權(quán)限,其中角色權(quán)限分為普通用戶,部門負責(zé)人和專家。

2.2 系統(tǒng)設(shè)計

下面以項目管理模塊中的項目信息填寫為例,介紹應(yīng)用Struts技術(shù)對系統(tǒng)進行開發(fā)設(shè)計的過程。

(1)視圖

系統(tǒng)視圖部分主要是由JSP技術(shù)實現(xiàn),是系統(tǒng)的顯示部分,是系統(tǒng)與用戶的接口,由一系列HTML頁面和JSP頁面組成。這些jsp文件中不添加任何業(yè)務(wù)邏輯處理代碼,只添加一些JSP標簽。當(dāng)用戶在頁面點擊相應(yīng)的控件時,表示層把用戶請求傳到控制層,由控制層處理,控制層根據(jù)實際情況調(diào)用業(yè)務(wù)層,完成具體操作,最后通過視圖顯示出來。本系統(tǒng)用戶界面有注冊界面regester.jsp,專家評分界面score.jsp等。以填寫申報項目信息界面projectMessage.jsp為例,此界面需輸入以下信息:項目號ProjectID(系統(tǒng)自動生成),項目名稱ProjectName,項目負責(zé)人ProjectUser(默認的是當(dāng)前用戶), 項目類型ProjectType,申報時間ProjectTime。如果填寫項目信息無誤,則顯示上傳項目申報書界面project.jsp。

(2)控制器

視圖發(fā)送請求后由核心控制器ActionServlet決定調(diào)用合適的業(yè)務(wù)控制器Action。以項目申請的Project.Action為例,控制器包括一個Action類ProjectMessageAction, 這個Java類一般從org.apache.struts.action.Action類繼承。控制器的主要任務(wù)是接受并處理從projectMessage.jsp接收的項目申報有關(guān)信息,若信息正確,則申報成功,跳轉(zhuǎn)到project.jsp頁面,上傳項目申報申請書;否則申報失敗,則跳轉(zhuǎn)到ProjectMessagefailed.jsp頁面,提示出錯信息。在實現(xiàn)控制器之前,需要先實現(xiàn)一個ActionForm類,這個類的作用是保存JSP頁面提交的數(shù)據(jù)。ActionForm類一般從org.apache.struts.action.ActionForm類繼承,而且在類中需要按著需要保存的數(shù)據(jù)表字段添加屬性。ActionForm類的屬性取名時要注意,必須和JSP頁面中的<html>標簽的property屬性值一致,如果不一致,將會拋出異常。

(3)模型

模型由實現(xiàn)業(yè)務(wù)邏輯的JavaBean組件構(gòu)成,主要用來在視圖組件和控制器組件之間傳遞HTML表單數(shù)據(jù),一般每個HTML表單對應(yīng)一個ActionForm Bean。項目信息填寫的ActionForm Bean由ProjectMessageForm構(gòu)成,在ProjectMessageForm中需要操縱數(shù)據(jù)庫,而項目中大量程序都要操縱數(shù)據(jù)庫,因此單獨編寫了一個ConDatabase連接數(shù)據(jù)庫的父類,項目中需要連接數(shù)據(jù)庫的程序只要繼承此父類就可以了。此外還在ActionForm中使用了validate()方法用于檢驗用戶輸入數(shù)據(jù)的合法性。在類中還使用了一個ProductForm類,這個類是一個ActionForm類,它的功能是保存客戶端提交的數(shù)據(jù)。以下是ProjectMessageForm的實現(xiàn)代碼。

(4)配置文件

在Struts系統(tǒng)中控制器ActionServlet是核心,界面中需要執(zhí)行事務(wù)邏輯的表單會提交一個請求,由控制器ActionServlet調(diào)用相應(yīng)的組件。用兩個基于XML的配置文件來配置,分別是web.xml和struts-cofig.xml文件。web.xml文件是配置所有web應(yīng)用的,而struts-config.xml文件是struts專用的配置文件,在本質(zhì)上也是一個基于Servlet的Web應(yīng)用,他將系統(tǒng)中的各組件結(jié)合在一起。在strutsconfig.xml文件中通過<action-mapping>元素中的<action>子元素指定需要訪問的Action路徑,以下是項目信息填寫功能的<action-mapping>:

<action-mappings>

<action name=” ProjectMessageForm” type=”KYXT..action.ProjectMessageAction” validate= ”true”in put=”projectMessage.jsp” scope=”request” path=”/ProjectMessageAction”>

3 結(jié) 語

Struts技術(shù)可以把用戶界面、業(yè)務(wù)過程、業(yè)務(wù)邏輯和業(yè)務(wù)控制進行分離,使得程序開發(fā)過程效率更高,進度更快,而且它允許一個模型組件被多個視圖組件共享,這樣大大提高了代碼的可重用性,在可維護性、交互性上較之一般的J2EE開發(fā)也有明顯的優(yōu)勢。將其運用到科研管理系統(tǒng)中不但系統(tǒng)運行穩(wěn)定、后期維護方便、操作簡便,而且提高了工作效率,科研管理流程更加規(guī)范化。

[1]王明,陸正球.基于MVC科研管理系統(tǒng)的研究與實現(xiàn)[J].微計算機應(yīng)用,2009(1):11-12.

[2]孫衛(wèi)琴.精通Struts:基于MVC的JavaWeb設(shè)計與開發(fā)[M].北京:電子工業(yè)出版社,2004.

[3]曾宇胸,王非.基于Struts框架技術(shù)的WEB應(yīng)用系統(tǒng)[J].計算機應(yīng)用與軟件,2008(7):196-197.

[4]吳興惠,陳明銳,賴文志.基于Struts的高校科研管理系統(tǒng)的設(shè)計與實現(xiàn)[J].海南廣播電視大學(xué)學(xué)報,2008(1):91-93.

[5]李剛.Struts2權(quán)威指南—基于WebWork核心的MVC開發(fā)[M].北京:電子工業(yè)出版社,2007.

Abstract:This article firstly analyzes the MVC design pattern and the mechanism of Struts.According to the characteristics of scientific management system,Struts is used in this system and then a real Web application is taken as an example to show a detailed application of Struts.

Key words:Struts;MVC;scientific management system;B/S

Application of Struts Technique in Scientific Management System

TANG Chun-ling HU Fang-xia LI Hui-ling ZHANG Yan
(Chongqing Technology and Business Institute,Chongqing 400052)

TP311

A

1673-1980(2011)06-0183-03

2011-07-23

唐春玲(1981-),女,吉林汪清人,碩士,講師,研究方向為數(shù)字信號處理。

猜你喜歡
用戶模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
Camera360:拍出5億用戶
100萬用戶
主站蜘蛛池模板: 嫩草国产在线| 成年人免费国产视频| 日韩 欧美 小说 综合网 另类| 青青青国产免费线在| 久久久久无码国产精品不卡| 精品99在线观看| 欧美综合成人| 91福利免费| 1769国产精品视频免费观看| 午夜小视频在线| 免费一级全黄少妇性色生活片| P尤物久久99国产综合精品| 国产精品播放| 一区二区三区在线不卡免费| 日本高清在线看免费观看| 国产嫩草在线观看| 精品视频一区在线观看| 国产性爱网站| 精品久久高清| 97综合久久| 青青操国产视频| 日韩精品无码不卡无码| 亚洲午夜片| 中文成人在线视频| 亚洲伦理一区二区| 国产欧美日韩va另类在线播放| 草逼视频国产| 亚洲不卡影院| 青青青国产精品国产精品美女| 色综合a怡红院怡红院首页| 日韩最新中文字幕| 美女裸体18禁网站| 欧美日韩国产高清一区二区三区| 国产精品一区二区在线播放| 99久久精品免费看国产免费软件| Jizz国产色系免费| 国产在线视频二区| 亚洲精品色AV无码看| 成人国产免费| 国产美女精品一区二区| 人妻中文久热无码丝袜| 狠狠亚洲婷婷综合色香| 国产免费久久精品44| 亚洲精品无码专区在线观看| 亚洲天堂在线免费| 18禁色诱爆乳网站| 日韩精品久久无码中文字幕色欲| 国产主播喷水| 日本妇乱子伦视频| 国产成人无码久久久久毛片| 欧美精品另类| 久久影院一区二区h| www.亚洲天堂| 2020国产精品视频| 国产一级二级在线观看| 夜夜爽免费视频| AV不卡无码免费一区二区三区| 日本高清有码人妻| 青青操国产视频| 女同久久精品国产99国| 久久精品电影| 伊人福利视频| 国产一区亚洲一区| 在线观看欧美精品二区| 国产真实乱子伦精品视手机观看| 国产成人精彩在线视频50| AV老司机AV天堂| 亚洲高清无在码在线无弹窗| 国产在线97| 丁香婷婷综合激情| 在线观看免费国产| 欧洲精品视频在线观看| 国产精品久久久久久久久kt| 四虎国产成人免费观看| 欧美a在线看| 国产成人一二三| 国产精品区网红主播在线观看| 67194在线午夜亚洲| h网址在线观看| 久久精品日日躁夜夜躁欧美| 中文字幕在线欧美| 欧美精品高清|