期刊在線咨詢服務(wù),立即咨詢
時(shí)間:2023-03-16 17:32:34
導(dǎo)言:作為寫(xiě)作愛(ài)好者,不可錯(cuò)過(guò)為您精心挑選的10篇網(wǎng)站設(shè)計(jì)論文,它們將為您的寫(xiě)作提供全新的視角,我們衷心期待您的閱讀,并希望這些內(nèi)容能為您提供靈感和參考。
工作流通常指的是工作參與者為了達(dá)到某一工作目標(biāo)而實(shí)施的工作以及工作轉(zhuǎn)交過(guò)程。工作流屬于一種對(duì)工作流程的計(jì)算模型,是把工作流程前后相關(guān)的工作聯(lián)系在一起的規(guī)則。簡(jiǎn)言之,工作流指的是一系列相互聯(lián)系且自動(dòng)實(shí)施的業(yè)務(wù)活動(dòng),是業(yè)務(wù)流程的全部或者部分自動(dòng)化。按照工作內(nèi)容和要求的不同我們可以針對(duì)不同類型的工作流定義出不同形式與特點(diǎn)的流程,在每個(gè)流程中都定義相關(guān)的節(jié)點(diǎn)信息,同時(shí)各個(gè)節(jié)點(diǎn)和有與其對(duì)應(yīng)的角色。各種單據(jù)與報(bào)表可以對(duì)應(yīng)不同的流程,如果我們的工作內(nèi)容或者管理需求發(fā)生變化,則可以對(duì)其中相關(guān)的一項(xiàng)節(jié)點(diǎn)或流程信息進(jìn)行調(diào)整,進(jìn)而極大的提升了整個(gè)系統(tǒng)的擴(kuò)展性與靈活度。
1.2審批流程流轉(zhuǎn)
對(duì)流程進(jìn)行定義之后,開(kāi)始制作相關(guān)單據(jù)與報(bào)表,正式進(jìn)入流轉(zhuǎn)過(guò)程,各個(gè)流程都分成了不同節(jié)點(diǎn),而每一個(gè)節(jié)點(diǎn)都必須通過(guò)具備一定權(quán)限的簽名之后才能夠順利向下一節(jié)點(diǎn)流轉(zhuǎn)。具備權(quán)限的用戶在打開(kāi)系統(tǒng)之后能夠成功查看自身所在節(jié)點(diǎn)的一系列流程信息,主要包含有需要簽名的單據(jù)、接受的回退申請(qǐng)或者撤銷的流程等。
1.3審批流程撤銷
Java網(wǎng)站設(shè)計(jì)中的工作流的設(shè)計(jì)文/康曉林蔣少莉良好的審批流程設(shè)計(jì)不但能夠擺脫時(shí)間與空間的制約,管理者也能夠不受時(shí)空的限制而下達(dá)相關(guān)指令,從而極大的提升工作效率。本文主要探討了基于Java的網(wǎng)站設(shè)計(jì)中工作流系統(tǒng)的設(shè)計(jì)。摘要流轉(zhuǎn)結(jié)束之后能夠撤銷,讓其恢復(fù)到流轉(zhuǎn)開(kāi)始時(shí)的狀態(tài),另外在流程流轉(zhuǎn)過(guò)程中數(shù)據(jù)庫(kù)中已經(jīng)被修改的信息也會(huì)恢復(fù)到原始狀態(tài)。在流轉(zhuǎn)開(kāi)始之前,我們可以利用存儲(chǔ)過(guò)程將定義好的流程進(jìn)行初始化,進(jìn)而生成流程實(shí)例。若流轉(zhuǎn)已經(jīng)完成的流程因某種原因必須撤銷,管理員能夠直接對(duì)流程信息進(jìn)行查看并下達(dá)撤銷指令,進(jìn)而讓其作為新流程再次流轉(zhuǎn)。
2系統(tǒng)實(shí)現(xiàn)
2.1加密封裝可靈活設(shè)置的數(shù)據(jù)庫(kù)連接
在Java平臺(tái)下設(shè)計(jì)的系統(tǒng)之中,一般我們選擇把需要連接的主機(jī)名、用戶名以及數(shù)據(jù)庫(kù)都寫(xiě)在JavaBean內(nèi),若用戶數(shù)據(jù)庫(kù)產(chǎn)生變化或者主機(jī)名、用戶名被修改,則必須對(duì)連接數(shù)據(jù)庫(kù)的JavaBean進(jìn)行修改,再編譯為Class文件,之后通過(guò)JSP客戶端或者應(yīng)用程序進(jìn)行調(diào)用。這樣一來(lái)就能夠避免對(duì)源程序進(jìn)行修改和重新編譯的繁瑣問(wèn)題。在本文所設(shè)計(jì)的系統(tǒng)中,主要是把需要連接的數(shù)據(jù)庫(kù)、主機(jī)名和用戶名共同寫(xiě)在一個(gè)加密文件內(nèi),在與數(shù)據(jù)庫(kù)連接時(shí)僅僅需要利用JavaBean來(lái)讀取這一加密文件。如果連接信息變化,則只需要對(duì)加密文件進(jìn)行修改,而不對(duì)連接數(shù)據(jù)庫(kù)程序進(jìn)行修改就能夠?qū)崿F(xiàn)與數(shù)據(jù)庫(kù)的有效連接,進(jìn)而在很大程度上提升了連接數(shù)據(jù)庫(kù)的靈活性。
2.2封裝數(shù)據(jù)庫(kù)處理邏輯
該系統(tǒng)是基于互聯(lián)網(wǎng)的網(wǎng)站系統(tǒng),我們無(wú)法明確的了解有多少用戶會(huì)同時(shí)上線使用,如果有成千上萬(wàn)人同時(shí)登陸,系統(tǒng)所承受的負(fù)荷非常之大。其中,數(shù)據(jù)庫(kù)連接的建立與釋放是這一系統(tǒng)中代價(jià)最大的操作,系統(tǒng)在數(shù)據(jù)庫(kù)的建立與釋放的過(guò)程中運(yùn)用連接池技術(shù),建立了相應(yīng)的數(shù)據(jù)庫(kù)連接對(duì)象,當(dāng)客戶端應(yīng)用程序?qū)B接產(chǎn)生使用需求時(shí),便從中取出,之后再放回其中,減少了連接重新釋放所消耗的時(shí)間,同時(shí)其余客戶端應(yīng)用程序需要與對(duì)象進(jìn)行連接時(shí)可以直接從中取出使用,節(jié)省了建立連接的時(shí)間。
2.3審批工作流程的實(shí)現(xiàn)
在本系統(tǒng)中,對(duì)審批流程的定義、流轉(zhuǎn)以及撤銷進(jìn)行了設(shè)計(jì),運(yùn)用微軟GryptoAPI技術(shù)、CAPICOM控件、JDK擴(kuò)展庫(kù)IAIK控件以及數(shù)字簽名技術(shù),有效的實(shí)現(xiàn)了單據(jù)和報(bào)表等網(wǎng)上審批流程。
日期:**年12月15日
1.本課題所涉及的問(wèn)題在國(guó)內(nèi)(外)的研究現(xiàn)狀綜述
本課題涉及問(wèn)題及現(xiàn)狀:
當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代。在各行各業(yè)中離不開(kāi)網(wǎng)絡(luò),這正是計(jì)算機(jī)被廣泛應(yīng)用于網(wǎng)上銷售系統(tǒng)的環(huán)境。當(dāng)前,中國(guó)書(shū)業(yè)正面臨著深刻的體制與行業(yè)發(fā)展模式的雙重變革面對(duì)未來(lái)的市場(chǎng),出版社和書(shū)店都不得不做出應(yīng)對(duì),在提升管理、減少成本、降低風(fēng)險(xiǎn)的同時(shí),尋求新的業(yè)態(tài)和渠道的突破。傳統(tǒng)的書(shū)店存在著各種各樣的弊端,如由于書(shū)店受面積所限,書(shū)籍太少,而且大多僅能提供本書(shū)店的有限信息,查找、檢索、訂購(gòu)費(fèi)時(shí)費(fèi)力,由于店面租金的原因,缺乏靈活性,同時(shí)過(guò)多的員工增加了書(shū)店的經(jīng)營(yíng)成本。相比之下,網(wǎng)上書(shū)店具有全面的圖書(shū)查詢信息功能,齊全的圖書(shū)品種,方便快捷的配送服務(wù),低廉的銷售價(jià)格,直接準(zhǔn)確的數(shù)據(jù)積累,靈活多樣的宣傳營(yíng)銷平臺(tái),先進(jìn)的互聯(lián)網(wǎng)技術(shù),完善的售后服務(wù)等優(yōu)勢(shì),并且中國(guó)人口基數(shù)大,且互聯(lián)網(wǎng)用戶增長(zhǎng)快,網(wǎng)上書(shū)店擁有眾多的潛在客戶。所有這些都為中國(guó)網(wǎng)上書(shū)店的發(fā)展帶來(lái)了機(jī)會(huì)。
網(wǎng)上書(shū)店在我國(guó)的發(fā)展已在逐步的上升,越來(lái)越受到大家的關(guān)注,可以預(yù)言,網(wǎng)上書(shū)店將走出內(nèi)外環(huán)境制約的階段,迎來(lái)快速發(fā)展的美好前景。
2.本人對(duì)課題提出的任務(wù)要求及實(shí)現(xiàn)預(yù)期目標(biāo)的可行性分析
1.本人對(duì)課題任務(wù)所提出的任務(wù)要求:
(1)實(shí)現(xiàn)圖書(shū)詳細(xì)情況的查詢;
(2)實(shí)現(xiàn)圖書(shū)的選購(gòu);
(3)實(shí)現(xiàn)購(gòu)物車功能;
(4)實(shí)現(xiàn)用戶信息更新功能;
(5)實(shí)現(xiàn)圖書(shū)選購(gòu)模擬結(jié)算功能。
(6)測(cè)試所有功能,找出不合理和不能解決問(wèn)題,請(qǐng)教指導(dǎo)老師幫助盡量完成解決問(wèn)題。
2.實(shí)現(xiàn)預(yù)期目標(biāo)的可行性分析:
主要從經(jīng)濟(jì)可行性,技術(shù)可行性和操作可行性三個(gè)角度分析。
在經(jīng)濟(jì)可行性方面:確保該系統(tǒng)的經(jīng)濟(jì)效益超過(guò)其開(kāi)發(fā)成本。該系統(tǒng)的經(jīng)濟(jì)投入主要是開(kāi)發(fā)軟件和人力資源方面的資金投入; 必須最大程度地在經(jīng)濟(jì)能力上贏得廣大市場(chǎng)許可。
技術(shù)可行性:系統(tǒng)是在Visua Studio 20**環(huán)境下開(kāi)發(fā)的,并采用過(guò)SQL Server 20**作為數(shù)據(jù)庫(kù)平臺(tái)來(lái)實(shí)現(xiàn)系統(tǒng)的方案。對(duì)于其中遇到的一些技術(shù)難點(diǎn)的預(yù)期解決方法以自己思考,從網(wǎng)絡(luò)和書(shū)本查找為主,輔以向指導(dǎo)教師和其他一些有過(guò)相關(guān)經(jīng)驗(yàn)的人請(qǐng)教。
操作可行性:該系統(tǒng)采用的是業(yè)界比較流行的前后臺(tái)方式實(shí)現(xiàn),為主流的實(shí)現(xiàn)方式,所以操作簡(jiǎn)單,安全可靠,比較適合廣大用戶所理解并能快速、獨(dú)立的使用這個(gè)系統(tǒng)。
3.本課題需要重點(diǎn)研究的、關(guān)鍵的問(wèn)題及解決的思路
本課題需要重點(diǎn)研究的關(guān)鍵的問(wèn)題:
1.購(gòu)物車功能;
2.模擬結(jié)算功能。
關(guān)鍵解決思路:
由于用戶選擇的書(shū)并不一定要定購(gòu),因此沒(méi)有必要對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。只是將用戶選購(gòu)的書(shū)號(hào)和數(shù)量存放于購(gòu)物車中。
(1)在購(gòu)買商品時(shí),在瀏覽/查看商品時(shí)點(diǎn)擊商品的購(gòu)物車標(biāo)識(shí)就可以把商品加到購(gòu)物車中。
(2)瀏覽購(gòu)物車,購(gòu)物車列表,序號(hào),商品名稱,購(gòu)買的商品數(shù)量,商品價(jià)格,所有商品總價(jià)。
(3)刪除購(gòu)物車中商品,從購(gòu)物車中將商品拿出或刪除。
(4)編輯購(gòu)物車中的商品,修改購(gòu)物車中已存在商品的數(shù)量。
(5)清空購(gòu)物車,把購(gòu)物車中的商品全部拿出。
由于用戶在結(jié)賬過(guò)程中需要使用到用戶的個(gè)人信息,并對(duì)用戶所購(gòu)的商品進(jìn)行記錄,所有要求用戶必須注冊(cè)并且登陸,所有在進(jìn)入服務(wù)臺(tái)前要驗(yàn)證用戶是否登錄,以便結(jié)賬。根據(jù)客戶購(gòu)物車中的信息,以及客戶所選擇的送貨方式和付款方式,連同客戶對(duì)應(yīng)的個(gè)人信息生成訂單,以便于后續(xù)進(jìn)行送貨處理。
4.完成本課題所必須的工作條件(如工具書(shū)、實(shí)驗(yàn)設(shè)備或?qū)嶒?yàn)環(huán)境條件、某類市場(chǎng)調(diào)研、計(jì)算機(jī)輔助設(shè)計(jì)條件等)及解決的辦法必須條件:
采用C#.NET語(yǔ)言和SQLSever 20**來(lái)實(shí)現(xiàn)系統(tǒng)方案。并利用Fash、Firework和Photoshop來(lái)實(shí)現(xiàn)界面的美觀,并查看C#的相關(guān)書(shū)籍。
需要的工具書(shū)與參考文獻(xiàn):
[1]匡松、張濰鑫 . ASP.NET開(kāi)發(fā)寶典 [M]. 中國(guó)鐵道出版社,20**.5
[2]郭常圳。C#網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)例學(xué)與實(shí)踐 [M]. 清華大學(xué)出版社 2006.11
[3]明日科技。asp.net 2.0開(kāi)發(fā)技術(shù)大全[M]. 人民郵電出版社 20**.2
[4]張蓓。ASP.NET通用模塊及典型系統(tǒng)開(kāi)發(fā)實(shí)例導(dǎo)航[M]. 中國(guó)青年電子出版社,2006.7
[5]張海藩。軟件工程(第五版)。清華大學(xué)出版社[M],20**.2
[6]賓晟、周峰、孫更新。ASP.NET網(wǎng)絡(luò)程序開(kāi)發(fā)原理與實(shí)踐教程[M]. 電子工業(yè)出版社,2007.1
[7]張樹(shù)亮、李超。ASP.NET2.0+SQL Server網(wǎng)絡(luò)應(yīng)用系統(tǒng)開(kāi)發(fā)案例精解[M]. 清華大學(xué)出版社, 2007.9
[8]馬軍。2.0網(wǎng)絡(luò)應(yīng)用系統(tǒng)開(kāi)發(fā)[M].人們郵電出版社,2006.6
[9]范玉嬋。Photoshop CS3 技術(shù)解析與精彩案例 [M] 清華大學(xué)出版社 20**.5
[10] 張潤(rùn)彤。電子商務(wù)概論(第二版)[M].電子工業(yè)出版社。20**.3
5.完成本課題的工作方案及進(jìn)度計(jì)劃
20**年12月15日-----20**年12月29日 選題,為相關(guān)設(shè)計(jì)做準(zhǔn)備。
20**年12月30日------20**年1月29日查詢相關(guān)知識(shí),編寫(xiě)開(kāi)題報(bào)告。
20**年1月30日------20**年3月9日學(xué)習(xí)相關(guān)知識(shí),并完成系統(tǒng)的需求分析編寫(xiě)系統(tǒng)詳細(xì)設(shè)計(jì)。
20**年3月10 日------20**年3月20 日 完成前臺(tái)系統(tǒng)設(shè)計(jì)。
20**年3月20日------20**年4月25 日 完成前臺(tái)子系統(tǒng)編程,并將各組員子系統(tǒng)進(jìn)行融合。
20**年4月26日------20**年5月2日 組員一起完成系統(tǒng)測(cè)試,完善系統(tǒng)。
20**年5月3日------20**年5月15日 書(shū)寫(xiě)文檔并完成論文初稿。
20**年5月16日------20**年6月5日 完成論文及答辯幻燈片。
1網(wǎng)絡(luò)安全總體狀況分析
2007年1月至6月期間,半年時(shí)間內(nèi),CNCERT/CC接收的網(wǎng)絡(luò)仿冒事件和網(wǎng)頁(yè)惡意代碼事件,已分別超出去年全年總數(shù)的14.6%和12.5%。
從CNCERT/CC掌握的半年情況來(lái)看,攻擊者的攻擊目標(biāo)明確,針對(duì)不同網(wǎng)站和用戶采用不同的攻擊手段,且攻擊行為趨利化特點(diǎn)表現(xiàn)明顯。對(duì)政府類和安全管理相關(guān)類網(wǎng)站主要采用篡改網(wǎng)頁(yè)的攻擊形式,也不排除放置惡意代碼的可能。對(duì)中小企業(yè),尤其是以網(wǎng)絡(luò)為核心業(yè)務(wù)的企業(yè),采用有組織的分布式拒絕服務(wù)攻擊(DDoS)等手段進(jìn)行勒索,影響企業(yè)正常業(yè)務(wù)的開(kāi)展。對(duì)于個(gè)人用戶,攻擊者更多的是通過(guò)用戶身份竊取等手段,偷取該用戶游戲賬號(hào)、銀行賬號(hào)、密碼等,竊取用戶的私有財(cái)產(chǎn)。
2用IIS+ASP建網(wǎng)站的安全性分析
微軟推出的IIS+ASP的解決方案作為一種典型的服務(wù)器端網(wǎng)頁(yè)設(shè)計(jì)技術(shù),被廣泛應(yīng)用在網(wǎng)上銀行、電子商務(wù)、網(wǎng)上調(diào)查、網(wǎng)上查詢、BBS、搜索引擎等各種互聯(lián)網(wǎng)應(yīng)用中。但是,該解決方案在為我們帶來(lái)便捷的同時(shí),也帶來(lái)了嚴(yán)峻的安全問(wèn)題。本文從ASP程序設(shè)計(jì)角度對(duì)WEB信息安全及防范進(jìn)行分析討論。
3SP安全漏洞和防范
3.1程序設(shè)計(jì)與腳本信息泄漏隱患
bak文件。攻擊原理:在有些編輯ASP程序的工具中,當(dāng)創(chuàng)建或者修改一個(gè)ASP文件時(shí),編輯器自動(dòng)創(chuàng)建一個(gè)備份文件,如果你沒(méi)有刪除這個(gè)bak文件,攻擊者可以直接下載,這樣源程序就會(huì)被下載。
防范技巧:上傳程序之前要仔細(xì)檢查,刪除不必要的文檔。對(duì)以BAK為后綴的文件要特別小心。
inc文件泄露問(wèn)題。攻擊原理:當(dāng)存在ASP的主頁(yè)正在制作且沒(méi)有進(jìn)行最后調(diào)試完成以前,可以被某些搜索引擎機(jī)動(dòng)追加為搜索對(duì)象。如果這時(shí)候有人利用搜索引擎對(duì)這些網(wǎng)頁(yè)進(jìn)行查找,會(huì)得到有關(guān)文件的定位,并能在瀏覽器中查看到數(shù)據(jù)庫(kù)地點(diǎn)和結(jié)構(gòu)的細(xì)節(jié),并以此揭示完整的源代碼。
防范技巧:程序員應(yīng)該在網(wǎng)頁(yè)前對(duì)它進(jìn)行徹底的調(diào)試。首先對(duì).inc文件內(nèi)容進(jìn)行加密,其次也可以使用.asp文件代替.inc文件,使用戶無(wú)法從瀏覽器直接觀看文件的源代碼。
3.2對(duì)ASP頁(yè)面進(jìn)行加密。為有效地防止ASP源代碼泄露,可以對(duì)ASP頁(yè)面進(jìn)行加密。我們?cè)捎脙煞N方法對(duì)ASP頁(yè)面進(jìn)行加密。一是使用組件技術(shù)將編程邏輯封裝入DLL之中;二是使用微軟的ScriptEncoder對(duì)ASP頁(yè)面進(jìn)行加密。3.3程序設(shè)計(jì)與驗(yàn)證不全漏洞
驗(yàn)證碼。普遍的客戶端交互如留言本、會(huì)員注冊(cè)等僅是按照要求輸入內(nèi)容,但網(wǎng)上有很多攻擊軟件,如注冊(cè)機(jī),可以通過(guò)瀏覽WEB,掃描表單,然后在系統(tǒng)上頻繁注冊(cè),頻繁發(fā)送不良信息,造成不良的影響,或者通過(guò)軟件不斷的嘗試,盜取你的密碼。而我們使用通過(guò)使用驗(yàn)證碼技術(shù),使客戶端輸入的信息都必須經(jīng)過(guò)驗(yàn)證,從而可以解決這個(gè)問(wèn)題。
登陸驗(yàn)證。對(duì)于很多網(wǎng)頁(yè),特別是網(wǎng)站后臺(tái)管理部分,是要求有相應(yīng)權(quán)限的用戶才能進(jìn)入操作的。但是,如果這些頁(yè)面沒(méi)有對(duì)用戶身份進(jìn)行驗(yàn)證,黑客就可以直接在地址欄輸入收集到的相應(yīng)的URL路徑,避開(kāi)用戶登錄驗(yàn)證頁(yè)面,從而獲得合法用戶的權(quán)限。所以,登陸驗(yàn)證是非常必要的。
SQL注入。SQL注入是從正常的WWW端口訪問(wèn),而且表面看起來(lái)跟一般的Web頁(yè)面訪問(wèn)沒(méi)什么區(qū)別,所以目前市面的防火墻都不會(huì)對(duì)SQL注入發(fā)出警報(bào),如果管理員沒(méi)查看IIS日志的習(xí)慣,可能被入侵很長(zhǎng)時(shí)間都不會(huì)發(fā)覺(jué)。
SQL注入攻擊是最為常見(jiàn)的程序漏洞攻擊方式,引起攻擊的根本原因就是盲目信任用戶,將用戶輸入用來(lái)直接構(gòu)造SQL語(yǔ)句或存儲(chǔ)過(guò)程的參數(shù)。以下列出三種攻擊的形式:
A.用戶登錄:假設(shè)登錄頁(yè)面有兩個(gè)文本框,分別用來(lái)供用戶輸入帳號(hào)和密碼,利用執(zhí)行SQL語(yǔ)句來(lái)判斷用戶是否為合法用戶。試想,如果黑客在密碼文本框中輸入''''OR0=0,即不管前面輸入的用戶帳號(hào)和密碼是什么,OR后面的0=0總是成立的,最后結(jié)果就是該黑客成為了合法的用戶。
B.用戶輸入:假設(shè)網(wǎng)頁(yè)中有個(gè)搜索功能,只要用戶輸入搜索關(guān)鍵字,系統(tǒng)就列出符合條件的所有記錄,可是,如果黑客在關(guān)鍵字文本框中輸入''''GODROPTABLE用戶表,后果是用戶表被徹底刪除。
C.參數(shù)傳遞:假設(shè)我們有個(gè)網(wǎng)頁(yè)鏈接地址是HTTP://……asp?id=22,然后ASP在頁(yè)面中利用Request.QueryString[''''id'''']取得該id值,構(gòu)成某SQL語(yǔ)句,這種情況很常見(jiàn)。可是,如果黑客將地址變?yōu)镠TTP://……asp?id=22anduser=0,結(jié)果會(huì)怎樣?如果程序員有沒(méi)有對(duì)系統(tǒng)的出錯(cuò)提示進(jìn)行屏蔽處理的話,黑客就獲得了數(shù)據(jù)庫(kù)的用戶名,這為他們的進(jìn)一步攻擊提供了很好的條件。
解決方法:以上幾個(gè)例子只是為了起到拋磚引玉的作用,其實(shí),黑客利用“猜測(cè)+精通的sql語(yǔ)言+反復(fù)嘗試”的方式,可以構(gòu)造出各種各樣的sql入侵。作為程序員,如何來(lái)防御或者降低受攻擊的幾率呢?作者在實(shí)際中是按以下方法做的:
第一:在用戶輸入頁(yè)面加以友好備注,告知用戶只能輸入哪些字符;
第二:在客戶端利用ASP自帶的校驗(yàn)控件和正則表達(dá)式對(duì)用戶輸入進(jìn)行校驗(yàn),發(fā)現(xiàn)非法字符,提示用戶且終止程序進(jìn)行;
第三:為了防止黑客避開(kāi)客戶端校驗(yàn)直接進(jìn)入后臺(tái),在后臺(tái)程序中利用一個(gè)公用函數(shù)再次對(duì)用戶輸入進(jìn)行檢查,一旦發(fā)現(xiàn)可疑輸入,立即終止程序,但不進(jìn)行提示,同時(shí),將黑客IP、動(dòng)作、日期等信息保存到日志數(shù)據(jù)表中以備核查。
第四:對(duì)于參數(shù)的情況,頁(yè)面利用QueryString或者Quest取得參數(shù)后,要對(duì)每個(gè)參數(shù)進(jìn)行判斷處理,發(fā)現(xiàn)異常字符,要利用replace函數(shù)將異常字符過(guò)濾掉,然后再做下一步操作。
第五:只給出一種錯(cuò)誤提示信息,服務(wù)器都只提示HTTP500錯(cuò)誤。
第六:在IIS中為每個(gè)網(wǎng)站設(shè)置好執(zhí)行權(quán)限。千萬(wàn)別給靜態(tài)網(wǎng)站以“腳本和可執(zhí)行”權(quán)限。一般情況下給個(gè)“純腳本”權(quán)限就夠了,對(duì)于那些通過(guò)網(wǎng)站后臺(tái)管理中心上傳的文件存放的目錄,就更吝嗇一點(diǎn)吧,執(zhí)行權(quán)限設(shè)為“無(wú)”好了。
第七:數(shù)據(jù)庫(kù)用戶的權(quán)限配置。對(duì)于MS_SQL,如果PUBLIC權(quán)限足夠使用的絕不給再高的權(quán)限,千萬(wàn)不要SA級(jí)別的權(quán)限隨隨便便地給。
3.4傳漏洞
諸如論壇,同學(xué)錄等網(wǎng)站系統(tǒng)都提供了文件上傳功能,但在網(wǎng)頁(yè)設(shè)計(jì)時(shí)如果缺少對(duì)用戶提交參數(shù)的過(guò)濾,將使得攻擊者可以上傳網(wǎng)頁(yè)木馬等惡意文件,導(dǎo)致攻擊事件的發(fā)生。
防文件上傳漏洞
在文件上傳之前,加入文件類型判斷模塊,進(jìn)行過(guò)濾,防止ASP、ASA、CER等類型的文件上傳。
暴庫(kù)。暴庫(kù),就是通過(guò)一些技術(shù)手段或者程序漏洞得到數(shù)據(jù)庫(kù)的地址,并將數(shù)據(jù)非法下載到本地。
數(shù)據(jù)庫(kù)可能被下載。在IIS+ASP網(wǎng)站中,如果有人通過(guò)各種方法獲得或者猜到數(shù)據(jù)庫(kù)的存儲(chǔ)路徑和文件名,則該數(shù)據(jù)庫(kù)就可以被下載到本地。
數(shù)據(jù)庫(kù)可能被解密
由于Access數(shù)據(jù)庫(kù)的加密機(jī)制比較簡(jiǎn)單,即使設(shè)置了密碼,解密也很容易。因此,只要數(shù)據(jù)庫(kù)被下載,其信息就沒(méi)有任何安全性可言了。
防止數(shù)據(jù)庫(kù)被下載。由于Access數(shù)據(jù)庫(kù)加密機(jī)制過(guò)于簡(jiǎn)單,有效地防止數(shù)據(jù)庫(kù)被下載,就成了提高ASP+Access解決方案安全性的重中之重。以下兩種方法簡(jiǎn)單、有效。
非常規(guī)命名法。為Access數(shù)據(jù)庫(kù)文件起一個(gè)復(fù)雜的非常規(guī)名字,并把它放在幾個(gè)目錄下。
使用ODBC數(shù)據(jù)源。在ASP程序設(shè)計(jì)中,如果有條件,應(yīng)盡量使用ODBC數(shù)據(jù)源,不要把數(shù)據(jù)庫(kù)名寫(xiě)在程序中,否則,數(shù)據(jù)庫(kù)名將隨ASP源代碼的失密而一同失密。
使用密碼加密。經(jīng)過(guò)MD5加密,再結(jié)合生成圖片驗(yàn)證碼技術(shù),暴力破解的難度會(huì)大大增強(qiáng)。
使用數(shù)據(jù)備份。當(dāng)網(wǎng)站被黑客攻擊或者其它原因丟失了數(shù)據(jù),可以將備份的數(shù)據(jù)恢復(fù)到原始的數(shù)據(jù),保證了網(wǎng)站在一些人為的、自然的不可避免的條件下的相對(duì)安全性。
3.5SP木馬
由于ASP它本身是服務(wù)器提供的一項(xiàng)服務(wù)功能,所以這種ASP腳本的木馬后門,不會(huì)被殺毒軟件查殺。被黑客們稱為“永遠(yuǎn)不會(huì)被查殺的后門”。我在這里講講如何有效的發(fā)現(xiàn)web空間中的asp木馬并清除。
技巧1:殺毒軟件查殺
一些非常有名的asp木馬已經(jīng)被殺毒軟件列入了黑名單,所以利用殺毒軟件對(duì)web空間中的文件進(jìn)行掃描,可以有效的發(fā)現(xiàn)并清除這些有名的asp木馬。
技巧2:FTP客戶端對(duì)比
asp木馬若進(jìn)行偽裝,加密,躲藏殺毒軟件,怎么辦?
我們可以利用一些FTP客戶端軟件(例如cuteftp,F(xiàn)lashFXP)提供的文件對(duì)比功能,通過(guò)對(duì)比FTP的中的web文件和本地的備份文件,發(fā)現(xiàn)是否多出可疑文件。
技巧3:用BeyondCompare2進(jìn)行對(duì)比
滲透性asp木馬,可以將代碼插入到指定web文件中,平常情況下不會(huì)顯示,只有使用觸發(fā)語(yǔ)句才能打開(kāi)asp木馬,其隱蔽性非常高。BeyondCompare2這時(shí)候就會(huì)作用比較明顯了。
技巧4:利用組件性能找asp木馬
如:思易asp木馬追捕。
大家在查找web空間的asp木馬時(shí),最好幾種方法結(jié)合起來(lái),這樣就能有效的查殺被隱藏起來(lái)的asp木馬。
結(jié)束語(yǔ)
總結(jié)了ASP木馬防范的十大原則供大家參考:
建議用戶通過(guò)FTP來(lái)上傳、維護(hù)網(wǎng)頁(yè),盡量不安裝asp的上傳程序。
對(duì)asp上傳程序的調(diào)用一定要進(jìn)行身份認(rèn)證,并只允許信任的人使用上傳程序。
asp程序管理員的用戶名和密碼要有一定復(fù)雜性,不能過(guò)于簡(jiǎn)單,還要注意定期更換。
到正規(guī)網(wǎng)站下載asp程序,下載后要對(duì)其數(shù)據(jù)庫(kù)名稱和存放路徑進(jìn)行修改,數(shù)據(jù)庫(kù)文件名稱也要有一定復(fù)雜性。
要盡量保持程序是最新版本。
不要在網(wǎng)頁(yè)上加注后臺(tái)管理程序登陸頁(yè)面的鏈接。
為防止程序有未知漏洞,可以在維護(hù)后刪除后臺(tái)管理程序的登陸頁(yè)面,下次維護(hù)時(shí)再通過(guò)上傳即可。
要時(shí)常備份數(shù)據(jù)庫(kù)等重要文件。
日常要多維護(hù),并注意空間中是否有來(lái)歷不明的asp文件。
一旦發(fā)現(xiàn)被人侵,除非自己能識(shí)別出所有木馬文件,否則要?jiǎng)h除所有文件。重新上傳文件前,所有asp程序用戶名和密碼都要重置,并要重新修改程序數(shù)據(jù)庫(kù)名稱和存放路徑以及后臺(tái)管理程序的路徑。
做好以上防范措施,您的網(wǎng)站只能說(shuō)是相對(duì)安全了,決不能因此疏忽大意,因?yàn)槿肭峙c反入侵是一場(chǎng)永恒的戰(zhàn)爭(zhēng)!網(wǎng)站安全是一個(gè)較為復(fù)雜的問(wèn)題,嚴(yán)格的說(shuō),沒(méi)有絕對(duì)安全的網(wǎng)絡(luò)系統(tǒng),我們只有通過(guò)不斷的改進(jìn)程序,將各種可能出現(xiàn)的問(wèn)題考慮周全,對(duì)潛在的異常情況進(jìn)行處理,才能減少被黑客入侵的機(jī)會(huì)。
參考文獻(xiàn)
二、信息技術(shù)課程教學(xué)網(wǎng)站的實(shí)現(xiàn)措施
1.要做好網(wǎng)站的功能定位和需求分析
在對(duì)信息技術(shù)網(wǎng)站進(jìn)行設(shè)計(jì)的時(shí)候,應(yīng)當(dāng)廣泛地進(jìn)行資料的收集,同時(shí)仔細(xì)研究和調(diào)查已經(jīng)在使用的信息技術(shù)課程網(wǎng)站的優(yōu)缺點(diǎn),對(duì)信息技術(shù)課程網(wǎng)站的日后發(fā)展方向開(kāi)展科學(xué)的分析,從而確保所構(gòu)建的信息技術(shù)網(wǎng)站的可行性和科學(xué)性。在進(jìn)行信息技術(shù)課程教學(xué)網(wǎng)站功能定位的時(shí)候,應(yīng)該從以下幾個(gè)方面進(jìn)行努力。首先要構(gòu)建老師和學(xué)生使用的強(qiáng)大信息資源庫(kù)。實(shí)踐中在開(kāi)展信息技術(shù)課程教學(xué)網(wǎng)站設(shè)計(jì)的過(guò)程中,應(yīng)該有針對(duì)性地系統(tǒng)地構(gòu)建豐富的信息庫(kù)資源,以便可以更好地滿足學(xué)生的日常學(xué)習(xí)需求,使得信息技術(shù)課程的教學(xué)效率更高。其次,要注重老師和學(xué)生之間交流模塊的構(gòu)建。學(xué)習(xí)過(guò)程中,便捷的學(xué)生和學(xué)生、學(xué)生和老師之間的交流平臺(tái)是保障信息技術(shù)課程教學(xué)質(zhì)量的關(guān)鍵所在,同時(shí)也是師生之間良好關(guān)系構(gòu)建的基礎(chǔ)保障,因此在進(jìn)行信息技術(shù)課程網(wǎng)站設(shè)計(jì)的過(guò)程中,應(yīng)該要實(shí)現(xiàn)論壇、聊天室之類的功能。第三要構(gòu)筑信息技術(shù)課程完整的課程內(nèi)容結(jié)構(gòu)。信息技術(shù)課程的教學(xué)網(wǎng)站是學(xué)生開(kāi)展自主學(xué)習(xí)的重要場(chǎng)所,因此在進(jìn)行網(wǎng)站的設(shè)計(jì)時(shí)就應(yīng)當(dāng)構(gòu)建完善的課程內(nèi)容,同時(shí)配以檢測(cè)習(xí)題和評(píng)分系統(tǒng),讓學(xué)生可以樂(lè)學(xué)和好學(xué),在學(xué)習(xí)過(guò)程中變得愉快輕松。
2.做好網(wǎng)站內(nèi)容的設(shè)計(jì)工作
第一要對(duì)學(xué)習(xí)的資源進(jìn)行擴(kuò)展。在進(jìn)行信息技術(shù)課程教學(xué)網(wǎng)站內(nèi)容設(shè)計(jì)的時(shí)候,應(yīng)該盡量結(jié)合信息技術(shù)課程教學(xué)特點(diǎn)和實(shí)際情況,注重對(duì)素材資源的額整理和收集,采取不同的學(xué)習(xí)工具和相關(guān)的資源網(wǎng)站鏈接,對(duì)信息技術(shù)課程虛席資源的深度和廣度進(jìn)行擴(kuò)展。第二要做好自我評(píng)價(jià)系統(tǒng)的設(shè)計(jì)。在利用網(wǎng)站開(kāi)展信息技術(shù)學(xué)習(xí)的時(shí)候,學(xué)生正確的自我評(píng)價(jià)可以很好地激發(fā)學(xué)生的學(xué)習(xí)興趣,最大限度地調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性和主動(dòng)性。所以,在進(jìn)行信息技術(shù)課程教學(xué)網(wǎng)站內(nèi)容設(shè)計(jì)的時(shí)候,應(yīng)該注重對(duì)學(xué)生自我評(píng)價(jià)系統(tǒng)的設(shè)計(jì),為學(xué)生的學(xué)習(xí)提供針對(duì)性且有真強(qiáng)針對(duì)性的強(qiáng)化訓(xùn)練,幫助學(xué)生更好地完成自我評(píng)價(jià),最大限度地提升信息技術(shù)課程的教學(xué)效率。
(1)具備完善的類別:機(jī)構(gòu)設(shè)置、招生工作、學(xué)科建設(shè)、歷年真題、資料下載等功能。
(2)資源的共建共享:使用者可以隨時(shí)、隨地通過(guò)網(wǎng)絡(luò)訪問(wèn)、上傳下載存放和使用庫(kù)中資源。
(3)WEB集成:基于WEB的應(yīng)用模式,使教學(xué)資源制作、管理,信息、教學(xué)交流、資源共享與交流都能在網(wǎng)上進(jìn)行。
(4)自主學(xué)習(xí):提供完善的網(wǎng)絡(luò)課程庫(kù)、真題庫(kù)、專家答疑輔導(dǎo)功能、試題庫(kù)與在線考試功能,學(xué)習(xí)者可以自主完成專業(yè)課程學(xué)習(xí)。校內(nèi)考研網(wǎng)站的后臺(tái)管理包括:
(1)圖片管理:對(duì)圖片的管理包括添加、刪除、修改,圖片的內(nèi)容元素主要包括圖片的名稱、所屬的欄目分類,分類由“欄目管理”中動(dòng)態(tài)生成、上傳圖片,將圖片上傳到網(wǎng)站頁(yè)面上。
(2)欄目管理:一般是以設(shè)置圖片或內(nèi)容的類別作為欄目,在這里可以進(jìn)行欄目的添加、刪除修改欄目名、菜單的排序、類別排序、首頁(yè)排序。
(3)靜態(tài)頁(yè)管理:生成靜態(tài)頁(yè)面的欄目,包括關(guān)閉網(wǎng)站靜態(tài)頁(yè)面功能、首頁(yè)更新靜態(tài)頁(yè)、列表頁(yè)更新靜態(tài)頁(yè)、內(nèi)容也更新靜態(tài)頁(yè)。
(4)用戶列表:用戶的各項(xiàng)參數(shù)設(shè)置。
(5)系統(tǒng)設(shè)置:進(jìn)行系統(tǒng)的參數(shù)設(shè)置,包括系統(tǒng)名稱、是否允許用戶注冊(cè)、用戶申請(qǐng)后是否需要審核。
(6)密碼修改:管理員密碼的修改。
(7)公告管理:首頁(yè)顯示的公告內(nèi)容。
(8)留言管理:對(duì)留言的回復(fù)、修改、刪除。此外校內(nèi)考研網(wǎng)站還應(yīng)該具有下列功能:
(1)強(qiáng)大的后臺(tái)文章編輯器的功能??煞奖愕赜猛蟿?dòng)的方式進(jìn)行圖文混排、圖片遠(yuǎn)程上傳、上傳圖片顯示效果處理等操作,以及“從word中粘貼”功能,能全部清除word排版格式多余代碼。
(2)自由編輯欄目模版,可設(shè)置多個(gè)模版。
(3)自由增刪修改欄目以及設(shè)置此欄目模版。
(4)新聞/圖片代碼調(diào)用在后臺(tái)生成。
(5)可增加多個(gè)低權(quán)限的錄入員,增加新聞時(shí)會(huì)記錄新聞的增加錄入員是誰(shuí)。
(6)新聞自由設(shè)置固頂或推薦,自由更改新聞標(biāo)題的顏色,可獨(dú)立設(shè)置某條新聞的URL轉(zhuǎn)向。
(7)新聞功能,可在后臺(tái)相關(guān)新聞。
(8)后臺(tái)修改新聞管理頁(yè)面,可以修改新聞的添加時(shí)間和閱讀數(shù)。
(9)后臺(tái)新聞管理時(shí),排序上下條移動(dòng)的功能。
二MOOC理念對(duì)微課資源網(wǎng)站設(shè)計(jì)的啟示
1MOOC概述
MOOC,是英文AMassiveOpenOnlineCourse的首字母縮寫(xiě),中文譯為“大規(guī)模網(wǎng)絡(luò)開(kāi)放課程”,維基百科的解釋為:MOOC是由大量參與者經(jīng)互聯(lián)網(wǎng)并免費(fèi)開(kāi)放的網(wǎng)絡(luò)課程。除了提供傳統(tǒng)課程材料,如視頻,閱讀,和問(wèn)題集外,MOOC還幫助學(xué)生、教授和助教們搭建一個(gè)網(wǎng)絡(luò)互動(dòng)社區(qū)[2]。MOOC是近年來(lái)出現(xiàn)的一種在線課程開(kāi)發(fā)模式,其完全開(kāi)放性、超大規(guī)模、用戶自組織和社會(huì)建設(shè)性的特點(diǎn)造就了其在互聯(lián)網(wǎng)迅速普及的神話。所有的MOOC課程都是完全免費(fèi)開(kāi)放的,這些課程不是搜集,而是一種將分布于世界各地的授課者和學(xué)習(xí)者通過(guò)某一個(gè)共同的話題或主題聯(lián)系起來(lái)的方式方法。MOOC課程提倡共享資源,匯集大量用戶思想以獲得更多的知識(shí),這種理念來(lái)自于聯(lián)通主義學(xué)習(xí)理論,與聯(lián)通主義的基本觀點(diǎn)相對(duì)應(yīng),Downes等人總結(jié)出MOOC課程的若干基本原則。(1)聚集。在傳統(tǒng)課程中,學(xué)習(xí)內(nèi)容是由教師提前準(zhǔn)備好的。而在MOOC課程中,大部分內(nèi)容是動(dòng)態(tài)匯集的。課程為分布在互聯(lián)網(wǎng)各處的海量?jī)?nèi)容提供了一個(gè)集合點(diǎn),這些內(nèi)容會(huì)通過(guò)網(wǎng)頁(yè)或課程通訊(Newsletter)等形式聚合以提供給課程的使用者。這些內(nèi)容是無(wú)止境的,學(xué)習(xí)者很可能不能讀完所有的內(nèi)容,他們應(yīng)該根據(jù)自己的興趣選擇要學(xué)習(xí)的內(nèi)容。(2)混合。學(xué)習(xí)過(guò)程中學(xué)習(xí)者將課程中的內(nèi)容和課程外的內(nèi)容相互混合,將學(xué)習(xí)者自己的資源和課程資源混合。通常的做法是撰寫(xiě)博客,通過(guò)社會(huì)性書(shū)簽記錄和分享新資源,參與論壇討論,使用Twitter發(fā)表簡(jiǎn)短的意見(jiàn)等。(3)轉(zhuǎn)用。根據(jù)學(xué)習(xí)者自己的目標(biāo)轉(zhuǎn)用聚合的課程資源以及混合后的資源。課程的目標(biāo)不是讓學(xué)習(xí)者重復(fù)課程的已有的內(nèi)容,而是鼓勵(lì)他們?cè)诖嘶A(chǔ)上有所創(chuàng)新。學(xué)習(xí)者可以基于課程已有知識(shí)根據(jù)自己的理解和想法編撰新的內(nèi)容。(4)推動(dòng)分享。學(xué)習(xí)者應(yīng)該積極與課程的其他學(xué)習(xí)者以及課程外的所有人分享自己所創(chuàng)作、混合或轉(zhuǎn)用的創(chuàng)意和內(nèi)容,引起更多的回應(yīng)和評(píng)論。分享的內(nèi)容可以是新資源、新觀點(diǎn)、新見(jiàn)解等。這些內(nèi)容中有價(jià)值的部分也會(huì)被課程協(xié)調(diào)人聚合到課程通訊中[3]。
2MOOC課程的運(yùn)行模式
根據(jù)李青等[4]對(duì)國(guó)際上流行的MOOC課程分析,MOOC的一般運(yùn)行模式如圖1。每門MOOC課程都會(huì)有一個(gè)中心平臺(tái)(一般會(huì)采用Wiki或Blog等簡(jiǎn)單易用的社會(huì)化工具),由課程協(xié)調(diào)人管理和維護(hù)。通過(guò)該平臺(tái)的課程信息包括課程概要、內(nèi)容資源、每周話題、活動(dòng)通知、組織教師介紹等等,以此組織整門課程的學(xué)習(xí)活動(dòng)。學(xué)習(xí)者可自由選擇論壇、微博、社交網(wǎng)站等個(gè)性化學(xué)習(xí)工具。在MOOC課程中,教師話題和活動(dòng),協(xié)調(diào)學(xué)習(xí)者的討論,推動(dòng)學(xué)習(xí)進(jìn)程;學(xué)習(xí)者則通過(guò)各種平臺(tái)和工具,瀏覽、討論、完成作業(yè),最終達(dá)到學(xué)習(xí)的目的。這一流程對(duì)于微課資源網(wǎng)站設(shè)計(jì)的啟發(fā)是,微課資源網(wǎng)站不應(yīng)該只是一個(gè)資源的、下載站點(diǎn),應(yīng)該更加注重教學(xué)互動(dòng),為師生提供專屬討論區(qū)、自由的資源共享權(quán)限、靈活的資源分享方式,成為一個(gè)集資源分享、社區(qū)討論為一體的教學(xué)平臺(tái)。
三基于MOOC理念的“微課”網(wǎng)站設(shè)計(jì)分析
1“微課”網(wǎng)站總體規(guī)劃
(1)頁(yè)面風(fēng)格設(shè)計(jì)?!拔⒄n”網(wǎng)站界面的設(shè)計(jì)應(yīng)當(dāng)以簡(jiǎn)潔、美觀為主,色彩、文字、圖片、視頻的使用風(fēng)格要同意,排列清晰有序。網(wǎng)站頁(yè)面以淺色為主,營(yíng)造輕松、舒適的頁(yè)面感受。
(2)系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)。網(wǎng)站功能模塊主要包括:網(wǎng)站幫助系統(tǒng)、資源中心、論壇、檢索系統(tǒng)、后臺(tái)管理五大模塊,具體功能結(jié)構(gòu)如圖2。網(wǎng)站的幫助系統(tǒng)主要包括網(wǎng)站使用說(shuō)明、資源上傳規(guī)范說(shuō)明、留言板和論壇版塊使用說(shuō)明,同時(shí)提供系統(tǒng)留言板,支持匿名留言,解答用戶使用中的疑難問(wèn)題。幫助系統(tǒng)幫助用戶有效操作“微課”資源網(wǎng)站?!拔⒄n”資源中心是“微課”資源網(wǎng)站建設(shè)的核心。對(duì)資源中心的資源分類依據(jù)校內(nèi)學(xué)院系部課程進(jìn)行劃分,這樣有助于校內(nèi)用戶迅速查找相關(guān)課程資源,同時(shí),在論壇模塊以同樣的方式劃分論壇版塊,與資源中心相呼應(yīng),并將注冊(cè)用戶的操作信息同步,例如,在資源中心上傳資源后,會(huì)在論壇相應(yīng)版塊自動(dòng)一條帶有超級(jí)鏈接的至該用戶上傳資源的帖子。資源中心支持所有用戶的資源查詢、瀏覽、下載,支持注冊(cè)用戶的資源上傳、訂閱、收藏、推薦與評(píng)價(jià)功能,同時(shí)通過(guò)設(shè)置注冊(cè)用戶的角色信息,實(shí)現(xiàn)對(duì)注冊(cè)用戶的個(gè)性化資源推送功能。資源訂閱功能,通過(guò)XML語(yǔ)言實(shí)現(xiàn)資源庫(kù)對(duì)不同注冊(cè)用戶需求的個(gè)性化推送。一旦網(wǎng)絡(luò)上傳了用戶訂閱的偏好資源,系統(tǒng)即可以向用戶以短信、郵件的形式直接向用戶推送該資源。資源收藏功能為注冊(cè)用戶提供網(wǎng)絡(luò)在線資源收藏功能。用戶對(duì)自己上傳、下載或喜愛(ài)的資源,可以直接分類保存在用戶網(wǎng)絡(luò)收藏夾中,以便于用戶管理自己的學(xué)習(xí)資源。資源的檢索功能分為分類檢索和綜合檢索。分類檢索是用戶可以依據(jù)資源的專業(yè)、年級(jí)、學(xué)院屬性直接進(jìn)行檢索;綜合檢索中,可以實(shí)現(xiàn)以標(biāo)題、關(guān)鍵字、專業(yè)和作者等數(shù)據(jù)的核心資源屬性進(jìn)行檢索。資源評(píng)價(jià)功能可以實(shí)現(xiàn)用戶對(duì)“微課”資源的評(píng)分、評(píng)論,評(píng)分結(jié)果計(jì)入系統(tǒng)推薦功能模塊,在首頁(yè)實(shí)現(xiàn)對(duì)資源的評(píng)分排序推薦。論壇功能為用戶提供交流的平臺(tái),論壇版塊分類與資源中心的資源分類同步,當(dāng)資源中心注冊(cè)用戶上傳相關(guān)資源后,在論壇相應(yīng)版塊也會(huì)直接新建帖子,提供該上傳資源的鏈接地址。同時(shí),論壇可以實(shí)現(xiàn)與QQ賬號(hào)綁定,個(gè)人發(fā)言信息可以在騰訊微博同步廣播。注冊(cè)教師用戶可以根據(jù)教學(xué)的需求,向管理員申請(qǐng)新建課程討論版塊,對(duì)版塊內(nèi)討論內(nèi)容,教師有權(quán)進(jìn)行審查、刪除。后臺(tái)管理模塊可以對(duì)網(wǎng)站的所有上傳資源、論壇、網(wǎng)站注冊(cè)用戶進(jìn)行管理,并且可以實(shí)現(xiàn)對(duì)注冊(cè)用戶網(wǎng)絡(luò)學(xué)習(xí)行為的統(tǒng)計(jì),包括注冊(cè)用戶在線時(shí)長(zhǎng),發(fā)帖頻率,資源上傳與下載頻率等,并以報(bào)表的形式呈現(xiàn)給后臺(tái)管理員。在網(wǎng)站管理模塊中,管理人員的角色劃分為網(wǎng)站管理員、教師、學(xué)生三個(gè)不同權(quán)限的組,每組的具體權(quán)限劃分詳見(jiàn)下文“用戶角色權(quán)限”內(nèi)容。
(3)用戶角色權(quán)限根據(jù)“微課”網(wǎng)站的使用對(duì)象,將網(wǎng)站用戶分為四類:教師、學(xué)生、匿名用戶、網(wǎng)站管理員。各類用戶的角色權(quán)限如圖3所示。匿名用戶權(quán)限包括檢索、查詢、獲取資源,可以對(duì)訪問(wèn)的資源進(jìn)行留言評(píng)價(jià),還可以通過(guò)網(wǎng)站留言板獲得支持。學(xué)生注冊(cè)用戶除了擁有匿名用戶的權(quán)限外,還擁有以下權(quán)限:資源管理權(quán)限:資源的上傳與下載、對(duì)自己上傳的資源進(jìn)行再編輯,包括查看、刪除、修改;對(duì)喜愛(ài)資源進(jìn)行收藏,訂閱。論壇權(quán)限:用戶基本信息維護(hù),參與論壇討論,申請(qǐng)加入特定教師課程討論組,向論壇注冊(cè)用戶發(fā)送站內(nèi)短消息,留言版塊留言。教師注冊(cè)用戶除了擁有上述學(xué)生用戶的所有權(quán)限之外,再資源與論壇權(quán)限方面還擁有以下特權(quán):資源管理權(quán)限:教師可以對(duì)所屬學(xué)院類目下的“微課”資源管理,包括該學(xué)院類目下所有資源進(jìn)行查看、刪除、修改、上傳與評(píng)價(jià)。論壇權(quán)限:教師有權(quán)申請(qǐng)?jiān)O(shè)立獨(dú)立的課程討論版塊,并有權(quán)新建用戶組,對(duì)該用戶組學(xué)生用戶進(jìn)行管理。例如,教師能夠?yàn)樾陆ㄓ脩艚M的學(xué)生發(fā)放學(xué)習(xí)資料、發(fā)送群組消息、推薦資源、管理組內(nèi)學(xué)生上傳內(nèi)容、查看學(xué)生網(wǎng)絡(luò)學(xué)習(xí)行為的統(tǒng)計(jì)信息,包括學(xué)生上網(wǎng)時(shí)長(zhǎng)、逗留版塊、發(fā)言頻次等。網(wǎng)站管理員對(duì)用戶的管理包括添加、刪除、修改學(xué)生和教師用戶的信息與權(quán)限。對(duì)網(wǎng)站的資源的管理,包括對(duì)于資源入庫(kù)的審核,資源的編輯、刪除;對(duì)論壇的全面管理,包括帖子審核、屏蔽、刪除、修改;同時(shí)也可以查看整個(gè)網(wǎng)站注冊(cè)用戶的網(wǎng)絡(luò)行為統(tǒng)計(jì)信息(包括登錄次數(shù)、在線時(shí)長(zhǎng)、發(fā)言頻次、登錄板塊分布等)。
(4)微課網(wǎng)站運(yùn)行流程通過(guò)上述功能設(shè)計(jì),教師可以充分利用MOOC課程建設(shè)理念使用微課網(wǎng)站輔助課堂教學(xué),在課堂教學(xué)開(kāi)始之前,教師可以首先通過(guò)微課資源網(wǎng)站課程相關(guān)信息,包括使用論壇專屬版塊、教師個(gè)人微博、郵件推送等方式,向班級(jí)學(xué)生提供課程資料(包括微課視頻、教學(xué)課件、講稿等)、布置課程任務(wù)、提出討論主題,學(xué)生及時(shí)參與互動(dòng),自由上傳搜集來(lái)的各種課程相關(guān)資源,由教師審核后至網(wǎng)站,為課堂教學(xué)的展開(kāi)打好基礎(chǔ)。課堂教學(xué)過(guò)程中,學(xué)生依據(jù)自學(xué)的網(wǎng)絡(luò)課程資源與討論主題,在課堂與教師展開(kāi)互動(dòng),依據(jù)網(wǎng)站平臺(tái)的學(xué)生網(wǎng)絡(luò)學(xué)習(xí)行為統(tǒng)計(jì)信息,對(duì)已經(jīng)參與網(wǎng)絡(luò)學(xué)習(xí)討論的學(xué)生,直接回答其學(xué)習(xí)疑惑;對(duì)未進(jìn)行網(wǎng)絡(luò)學(xué)習(xí)的學(xué)生,引入新課,講解要點(diǎn),布置任務(wù),督促學(xué)習(xí),有針對(duì)性地區(qū)別輔導(dǎo)。課后,再次通過(guò)微課資源網(wǎng)站,匯總討論問(wèn)題,上傳新課任務(wù)(如圖4)。學(xué)生在課前通過(guò)微課資源網(wǎng)站與教師騰訊微博郵件等方式,自主學(xué)習(xí)教師布置的新課任務(wù),收集學(xué)習(xí)各類課程相關(guān)資源,并將自己認(rèn)為較好的資源上傳至微課網(wǎng)站,提交教師審核,同時(shí)整理學(xué)習(xí)疑問(wèn),在課堂上集中與教師和同學(xué)討論,課后再通過(guò)微課資源網(wǎng)站發(fā)帖或向教師發(fā)郵件解決遺留問(wèn)題,接收教師新課內(nèi)容,開(kāi)始下一單元學(xué)習(xí)(如圖5)。
用例建模主要是用例試圖的構(gòu)建,用例視圖是一種模型圖,它是站在用戶的角度定義的,可以讓所有參與者看都能到其中的系統(tǒng)功能。醫(yī)院門戶網(wǎng)站模型的參與者包含:院領(lǐng)導(dǎo)、各科主任、各部門專家、護(hù)士、信息管理員、采購(gòu)和市場(chǎng)調(diào)查員等等。這些參與者與醫(yī)院門戶網(wǎng)站聯(lián)合互動(dòng),交換信息,成為網(wǎng)站的主題,在此種情況下他們扮演著網(wǎng)站外部信息交換的目標(biāo)。
2靜態(tài)建模
靜態(tài)模型的建立主要就是用類圖來(lái)描述系統(tǒng)中的靜態(tài)解構(gòu),通過(guò)一系列的分析剖析,得到相關(guān)的類。類圖不僅能定義其自身的方法屬性,更重要的是表達(dá)了類與類之間的關(guān)系。在本課題的醫(yī)院門戶網(wǎng)站中,客戶經(jīng)理對(duì)系統(tǒng)內(nèi)的類的屬性進(jìn)行操作,例如管理系統(tǒng)的登陸、階段匯報(bào)的上傳、對(duì)象的信息更新、數(shù)據(jù)的備份等。
3動(dòng)態(tài)建模
在靜態(tài)建模的基礎(chǔ)上,開(kāi)始構(gòu)建動(dòng)態(tài)建模。動(dòng)態(tài)模型所描述的,是實(shí)現(xiàn)系統(tǒng)功能的流程圖,活動(dòng)圖等,是從各個(gè)不同的角度,來(lái)描述對(duì)象之間的相互作用的關(guān)系。時(shí)序圖是通過(guò)二維圖來(lái)表達(dá)對(duì)象之間的交互的,垂直軸是時(shí)序圖的時(shí)間進(jìn)程,水平軸是對(duì)象之間的交互。垂直周的虛線即是生命線,表示該對(duì)象的存在時(shí)間。生命線的消息是一對(duì)象到另一個(gè)對(duì)象生命線的箭頭。箭頭則是按時(shí)間順序至上而下的在途中排列。在輸入用戶名和密碼登錄系統(tǒng)后,打開(kāi)掛號(hào)窗體,輸入病人信息等一系列的信息,掛號(hào)成功,最后關(guān)閉掛號(hào)窗體。
4活動(dòng)圖
活動(dòng)圖是標(biāo)準(zhǔn)建模語(yǔ)言(uml)的一種形動(dòng)態(tài)模型圖,適用于表示用例的事件和過(guò)程,可以用來(lái)復(fù)雜的算法極其并發(fā)處理的國(guó)臣。活動(dòng)圖表達(dá)達(dá)到用例要求所要進(jìn)行的一系列活動(dòng)和活動(dòng)間的交互關(guān)系,能更清晰的識(shí)別活動(dòng)。活動(dòng)圖也是一種狀態(tài)圖的一種,在建模過(guò)程中顯得特別重要,主要是強(qiáng)調(diào)對(duì)象間的流程控制。
二課程的學(xué)習(xí)目標(biāo)
通過(guò)本課程的學(xué)習(xí),使學(xué)生能按照用戶需求,編寫(xiě)網(wǎng)站需求分析報(bào)告;對(duì)網(wǎng)站進(jìn)行策劃與設(shè)計(jì),運(yùn)行多種技術(shù)對(duì)動(dòng)態(tài)網(wǎng)站進(jìn)行開(kāi)發(fā)和制作;并經(jīng)過(guò)技術(shù)測(cè)試,最終將其到Internet環(huán)境;能對(duì)網(wǎng)站進(jìn)行維護(hù)。通過(guò)引導(dǎo)、項(xiàng)目實(shí)施、討論、總結(jié)、測(cè)評(píng),幫助學(xué)生學(xué)習(xí)網(wǎng)站設(shè)計(jì)與開(kāi)發(fā)的基本知識(shí)和實(shí)用技術(shù),為后續(xù)專業(yè)課程、專業(yè)實(shí)踐打下良好基礎(chǔ),為將來(lái)從事網(wǎng)站設(shè)計(jì)、開(kāi)發(fā)和維護(hù)工作奠定良好基礎(chǔ)。同時(shí),在教學(xué)過(guò)程中,通過(guò)團(tuán)隊(duì)開(kāi)發(fā),形成基本的職業(yè)道德意識(shí)和職業(yè)素質(zhì)。
1.具體的能力目標(biāo)能根據(jù)用戶需求,確定網(wǎng)站類型與網(wǎng)站內(nèi)容,編寫(xiě)網(wǎng)站需求分析報(bào)告;能根據(jù)實(shí)際情況設(shè)計(jì)出適合的網(wǎng)站頁(yè)面風(fēng)格和布局;能編輯網(wǎng)頁(yè);能運(yùn)用JSP相關(guān)代碼按要求協(xié)作完成網(wǎng)站功能;能根據(jù)用戶需求設(shè)計(jì)并協(xié)作完成后臺(tái)數(shù)據(jù)庫(kù)的開(kāi)發(fā);能針對(duì)網(wǎng)站制訂網(wǎng)站測(cè)試計(jì)劃并進(jìn)行功能測(cè)試;能申請(qǐng)域名和IP,成功將網(wǎng)站上傳;能及時(shí)更新網(wǎng)站,合理優(yōu)化網(wǎng)站。
2.具體的知識(shí)目標(biāo)掌握域名與IP地址等基本概念;熟練掌握網(wǎng)站設(shè)計(jì)原則、網(wǎng)站建設(shè)基本流程;了解網(wǎng)站運(yùn)行的硬件與軟件環(huán)境;掌握Div+CSS技術(shù);熟練掌握網(wǎng)頁(yè)編輯軟件Dreamweaver的使用;掌握數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)方法及數(shù)據(jù)庫(kù)的創(chuàng)建、管理與維護(hù);掌握J(rèn)SP程序設(shè)計(jì)語(yǔ)言的語(yǔ)法知識(shí);了解網(wǎng)站更新、故障排除及網(wǎng)站推廣的方法;掌握網(wǎng)站測(cè)試的內(nèi)容、方法和技巧;掌握網(wǎng)站的與管理方法。
3.具體的素質(zhì)目標(biāo)培養(yǎng)學(xué)生開(kāi)發(fā)網(wǎng)站的團(tuán)隊(duì)協(xié)作、交流合作能力;培養(yǎng)學(xué)生良好的網(wǎng)站開(kāi)發(fā)崗位人員的職業(yè)道德;培養(yǎng)學(xué)生與客戶溝通的能力;培養(yǎng)學(xué)生的網(wǎng)絡(luò)安全意識(shí);提升溝通協(xié)調(diào)、共同開(kāi)發(fā)網(wǎng)站的綜合能力;培養(yǎng)學(xué)生具有較好的分析和解決實(shí)際網(wǎng)站開(kāi)發(fā)問(wèn)題的能力。
三教學(xué)內(nèi)容的組織與安排
課程組根據(jù)網(wǎng)站開(kāi)發(fā)項(xiàng)目實(shí)施過(guò)程,進(jìn)行了課程教學(xué)內(nèi)容的開(kāi)發(fā),充分體現(xiàn)職業(yè)性、實(shí)踐性和開(kāi)放性的要求,在內(nèi)容組織上徹底打破學(xué)科知識(shí)體系的禁錮,教學(xué)擺脫了傳統(tǒng)的以教材為主線的邏輯教學(xué)結(jié)構(gòu)方式。對(duì)實(shí)現(xiàn)案例的模塊功能所需的技能和必備知識(shí)進(jìn)行了全新的組織。
四課程特色與創(chuàng)新
針對(duì)“高職教育背景下,如何提高學(xué)生的工程能力、創(chuàng)新意識(shí)和協(xié)作能力,培養(yǎng)社會(huì)需要的計(jì)算機(jī)人才”這一主題,按照“學(xué)研學(xué)工融合、突出專業(yè)特色、培養(yǎng)應(yīng)用型人才”的改革思路,結(jié)合專業(yè)和學(xué)科建設(shè),將網(wǎng)站設(shè)計(jì)與開(kāi)發(fā)課程教學(xué)改革作為一個(gè)整體展開(kāi)全方位的研究與實(shí)踐。
1.“大案例、一案到底”教學(xué)根據(jù)專業(yè)建設(shè)思路,結(jié)合本課程的特點(diǎn),推行“大案例,一案到底”案例式教學(xué),課程將真實(shí)完整的案例——“網(wǎng)上商城網(wǎng)站的設(shè)計(jì)與開(kāi)發(fā)”貫穿到整個(gè)教學(xué)過(guò)程中,教學(xué)組織上將網(wǎng)站設(shè)計(jì)與開(kāi)發(fā)根據(jù)工作流程,分解成10個(gè)相對(duì)獨(dú)立的模塊,每個(gè)模塊完成數(shù)據(jù)庫(kù)開(kāi)發(fā)流程的一個(gè)過(guò)程,充分體現(xiàn)職業(yè)訓(xùn)練的高職教學(xué)特征。
2.創(chuàng)新構(gòu)建了立足基礎(chǔ)、體現(xiàn)特色、面向需求的數(shù)據(jù)庫(kù)開(kāi)發(fā)與應(yīng)用教學(xué)體系首先,體現(xiàn)特色:圍繞數(shù)據(jù)庫(kù)技術(shù)的基本能力、應(yīng)用能力、創(chuàng)新能力培養(yǎng),體現(xiàn)應(yīng)用型人才培養(yǎng)特色。其次,面向需求:以社會(huì)和企業(yè)需求為導(dǎo)向,構(gòu)建實(shí)踐教學(xué)體系。
2網(wǎng)頁(yè)設(shè)計(jì)中的審美需求
網(wǎng)頁(yè)設(shè)計(jì)是新興的設(shè)計(jì)門類、網(wǎng)絡(luò)設(shè)計(jì)和互聯(lián)網(wǎng)交叉的學(xué)科,網(wǎng)絡(luò)時(shí)代將是未來(lái)相當(dāng)長(zhǎng)一段時(shí)間的世界發(fā)展大趨勢(shì),也一直備受矚目,她本身具有網(wǎng)絡(luò)特性的載體意識(shí)形態(tài),把各種信息快捷方便的傳遞給用戶群體。傳達(dá)信息是首要的標(biāo)準(zhǔn),那么在完成這個(gè)要求下人們不斷的對(duì)美的追求也就有所加強(qiáng),網(wǎng)頁(yè)設(shè)計(jì)只單單的完成其傳達(dá)信息這一要求是遠(yuǎn)遠(yuǎn)不夠的,人們對(duì)于美的追求不斷加深的同時(shí)就要求將各種信息如何更好的表現(xiàn)出來(lái),要考慮受眾群體如何清晰的準(zhǔn)確的確認(rèn)好網(wǎng)頁(yè)設(shè)計(jì)內(nèi)容,優(yōu)秀的設(shè)計(jì)能夠給人以愉悅感,接受信息也就更加的容易些。網(wǎng)頁(yè)的審美設(shè)計(jì)首先不能夠是單純的將各種東西放上去,只是完成能看的要求對(duì)于當(dāng)下的網(wǎng)頁(yè)設(shè)計(jì)是遠(yuǎn)遠(yuǎn)不夠的,要能夠考慮到如何使受眾用戶瀏覽能夠愉悅和容易的接受信息。而且網(wǎng)頁(yè)設(shè)計(jì)的審美要求其實(shí)是對(duì)傳統(tǒng)美術(shù)中的一種繼承和使用上的延伸。是相互一致的,把傳統(tǒng)平面設(shè)計(jì)中的構(gòu)圖要素以及圖形規(guī)律運(yùn)用到現(xiàn)代網(wǎng)頁(yè)設(shè)計(jì)中的具體問(wèn)題的解決當(dāng)中去,能夠增加網(wǎng)頁(yè)設(shè)計(jì)的形式美感和構(gòu)成美感以及大眾的視覺(jué)審美需求。
3以唐代服裝職業(yè)教育網(wǎng)站的設(shè)計(jì)構(gòu)成要素分析
網(wǎng)站的設(shè)計(jì)起源是源于唐朝,中國(guó)的唐朝是一個(gè)強(qiáng)盛的朝代,對(duì)周邊國(guó)家及整個(gè)亞洲地區(qū)的政治經(jīng)濟(jì)和文化發(fā)展都產(chǎn)生深遠(yuǎn)的影響。唐代政治長(zhǎng)期穩(wěn)定,對(duì)外貿(mào)易發(fā)達(dá),在經(jīng)歷了近三百年的和平發(fā)展后,唐代的社會(huì)生產(chǎn)力得到了極大的發(fā)展,國(guó)力強(qiáng)盛,文化藝術(shù)繁榮昌盛。影響唐代服裝的因素有人們的勞動(dòng)成果、物質(zhì)文明的發(fā)展程度、傳統(tǒng)服裝樣式、人們長(zhǎng)期以來(lái)形成的生活習(xí)俗、審美情趣、色彩愛(ài)好、文化心態(tài)、社會(huì)風(fēng)尚等等,反之,服裝以及圍繞服裝產(chǎn)生的文化又反過(guò)來(lái)影響了社會(huì)的政治、經(jīng)濟(jì)、科學(xué)、文化、教育、禮儀、倫理等社會(huì)規(guī)范,這些影響也持續(xù)存在于我們現(xiàn)代的生活中,目前我國(guó)在傳統(tǒng)文化遺產(chǎn)的利用,基于唐服的數(shù)字化繼承與開(kāi)發(fā)方面尚處于初級(jí)階段,有待于利用數(shù)字化手段對(duì)教育網(wǎng)站的功能加以保護(hù)、利用、開(kāi)發(fā)。在以唐代服裝職業(yè)教育網(wǎng)站的視覺(jué)傳達(dá)分析上,對(duì)其網(wǎng)頁(yè)構(gòu)成要素進(jìn)行分析。
3.1網(wǎng)頁(yè)色彩設(shè)計(jì)分析
唐代傳統(tǒng)服裝教育網(wǎng)站設(shè)計(jì)首先要將唐代服飾的主要設(shè)計(jì)色彩提取,唐代作為中國(guó)鼎盛時(shí)期的封建王朝,其經(jīng)濟(jì)繁榮,文化昌盛,服飾衣式都呈現(xiàn)出前所未有的華麗和燦爛,唐代的服飾文化對(duì)于當(dāng)時(shí)的歷史來(lái)講也是有所繼承和發(fā)揚(yáng)的,堅(jiān)持著對(duì)傳統(tǒng)服飾色彩文化的“鮮明”特色,在色彩上采用單一為了突出,色彩上大氣而又豪放,具有泱泱大國(guó)的豪情和色彩情調(diào)的吉祥喜慶,積極健康向上,整體上體現(xiàn)了唐代禮儀之邦的風(fēng)度。唐代傳統(tǒng)服裝教育網(wǎng)站設(shè)計(jì)在色彩上體現(xiàn)了色彩形式的艷麗明快,給人以賞心悅目之感,同時(shí)也不落入俗套,設(shè)計(jì)特點(diǎn)也是鮮明而且奔放。網(wǎng)頁(yè)設(shè)計(jì)就像藝術(shù)品一樣,因?yàn)槠淦矫嫔系纳蕦?duì)比新穎、整潔,運(yùn)用唐代服飾色彩的明快對(duì)比增加網(wǎng)頁(yè)的整體強(qiáng)烈視覺(jué)效果,使頁(yè)面更加生動(dòng)。而且,用戶在使用網(wǎng)頁(yè)時(shí),留下的第一深刻印象就是頁(yè)面的色彩設(shè)計(jì),其色彩設(shè)計(jì)的好壞直接影響受眾群體的觀賞使用興趣。因此,色彩設(shè)計(jì)的安排在設(shè)計(jì)網(wǎng)頁(yè)的過(guò)程中占有極其重要的位置。對(duì)于網(wǎng)頁(yè)設(shè)計(jì)上色彩使用把握幾個(gè)方法:首先是主色調(diào)的明快,符合唐代服飾的整體色彩風(fēng)格;前層色彩明快,背景設(shè)計(jì)就用比較淡雅的顏色,例如:淡灰色、淺黃色、淡藍(lán)色等等。淺色為底,使受眾群體感受到的是柔和、素淡。配上明快的唐代服飾色彩圖案形成配色統(tǒng)一。忌諱喧賓奪主,唐代服飾的明快色彩應(yīng)該成為網(wǎng)站有活力的代表,而不應(yīng)該成為雜亂無(wú)章的網(wǎng)頁(yè)整體感覺(jué)。少量的有代表性的唐代服飾元素用以突出強(qiáng)烈的視覺(jué)突出和強(qiáng)調(diào),但是要合理使用,形成色彩結(jié)構(gòu),有條不紊。駐足在唐代衣妝盛世里的五彩斑斕仍然無(wú)法逃脫追求“和諧”有余,將其色彩斑斕的世界帶到全新的網(wǎng)絡(luò)時(shí)代。
網(wǎng)頁(yè)作為互聯(lián)網(wǎng)信息平臺(tái)的構(gòu)成要素,其信息性是網(wǎng)站建立的初衷,文字是網(wǎng)頁(yè)中不可缺少的要素,是信息傳遞的主要工具之一,文字的表現(xiàn)力是影響整個(gè)頁(yè)面設(shè)計(jì)的質(zhì)量的,其中包括字體的設(shè)計(jì)和編排。唐代傳統(tǒng)服裝教育網(wǎng)站設(shè)計(jì)的文字主要介紹各種唐代資料的信息,而要傳達(dá)各種有效的服飾要素信息,必須考慮對(duì)整體網(wǎng)站的文字編排,能夠給人以清晰的視覺(jué)印象,避免文字編輯上的相互混亂和頁(yè)面整體的雜亂無(wú)章,減去不必要的文字裝飾,讓人簡(jiǎn)單中去識(shí)別網(wǎng)站的文字信息。不能夠?yàn)榱嗽煨腿ルS便編輯文字,忘記了文字的最根本要素就是“傳達(dá)內(nèi)容本身”和“去表達(dá)”。唐代傳統(tǒng)服裝教育網(wǎng)站的文字編排與設(shè)計(jì)要素就是要服從于信息本身的內(nèi)容特點(diǎn),也就是要符合唐代服飾文化特點(diǎn)要求,當(dāng)然不能生搬硬套,不能直接將唐代文字直接不加變化的在網(wǎng)站中進(jìn)行使用,文字字體可以借鑒唐代最為盛行的“楷書(shū)”字樣,設(shè)計(jì)整體要簡(jiǎn)單有序,造型規(guī)范。對(duì)內(nèi)容文字安排也要做到層次分明,節(jié)奏明快,蒼勁古樸的意蘊(yùn)、端莊典雅的風(fēng)范或優(yōu)美清新的格調(diào)都要融合在整體網(wǎng)站的文字設(shè)計(jì)中來(lái)。文字作為視覺(jué)要素中的形象要素之一,除了能夠表達(dá)意思之外,還要能夠傳達(dá)情感的功能,既要美觀,有能將美好的圖示形象傳遞給受眾群體,獲得良好的視覺(jué)信息提高網(wǎng)站整體設(shè)計(jì)效果。
3.3圖片信息編排
唐代傳統(tǒng)服裝教育網(wǎng)站主要是以展示唐代傳統(tǒng)服裝信息為主的網(wǎng)站,主要內(nèi)容是以圖片的形式對(duì)網(wǎng)站內(nèi)容進(jìn)行表達(dá)。網(wǎng)站是以圖文并茂地形式對(duì)網(wǎng)站內(nèi)容進(jìn)行構(gòu)架的,因?yàn)榫W(wǎng)站的表達(dá)內(nèi)容比較特殊,其網(wǎng)站表達(dá)的方式是以圖片信息表達(dá)更為直觀,因此在圖片信息的編排上要有所安排。從純文字的網(wǎng)絡(luò)信息上脫離,更為簡(jiǎn)潔明快的運(yùn)用圖片信息進(jìn)行表達(dá)。網(wǎng)站對(duì)圖片的要求要求質(zhì)量不能過(guò)高,這樣會(huì)影響網(wǎng)站整體運(yùn)行速度,還因?yàn)轱@示器的最小分辨率會(huì)形象圖片的現(xiàn)實(shí)效果,即使是圖片的分辨率很好,但是由于其最小分辨率的影響,我們的肉眼是無(wú)法分辨的,但是唐代傳統(tǒng)服裝教育網(wǎng)站有時(shí)以服飾為主的網(wǎng)站,很多華美的圖片是可以單獨(dú)做出圖片鏈接進(jìn)行單獨(dú)加載,來(lái)觀察圖片的華美效果。不需要單獨(dú)打開(kāi)的圖片一般我們使用的圖片分辨率為72dpi(dotperinch)也是大多數(shù)圖片最佳選擇。
1.1設(shè)計(jì)思想
通過(guò)網(wǎng)站,全面宣傳,展示學(xué)校風(fēng)采、優(yōu)點(diǎn)與特色,學(xué)校的重大活動(dòng)安排與招生政策,增強(qiáng)家長(zhǎng)與學(xué)校之間的聯(lián)系,在Internet上實(shí)現(xiàn)完成部分校務(wù),提高辦事效率。
1.2開(kāi)發(fā)工具的選用及介紹
ASP的優(yōu)勢(shì):
ActiveServerPages:“動(dòng)態(tài)服務(wù)器網(wǎng)頁(yè)”,一般簡(jiǎn)稱為“ASP”,ASP之所以能受到大家的重視與使用的原因,主要在于所產(chǎn)生的執(zhí)行結(jié)果都是標(biāo)準(zhǔn)的HTML格式,而且這些程序是在網(wǎng)絡(luò)服務(wù)端中執(zhí)行,使用一般的瀏覽器(如IE或Netscape)都可以正確地獲得ASP的“執(zhí)行”結(jié)果,并且將這ASP執(zhí)行的結(jié)果直接在瀏覽器中“瀏覽”,不像VBScript或javascript是在客戶端(Client)的瀏覽器上執(zhí)行,若使用VBScript來(lái)設(shè)計(jì)程序,客戶端(Client)在IE瀏覽器中可以顯示程序執(zhí)行的結(jié)果,可是,客戶端(Client)若使用Netscape瀏覽器就無(wú)法顯示VBScript的執(zhí)行結(jié)果。
ASP的特點(diǎn):
任何開(kāi)發(fā)工具皆可發(fā)展ASP
只要使用一般的文書(shū)編輯程序,如Windows記事本,就可以編輯。當(dāng)然,其他網(wǎng)頁(yè)發(fā)展工具,例如,F(xiàn)rontPageExpress、FrontPage等也都可以;不過(guò)還是建議你用記事本來(lái)寫(xiě),既省錢又方便,若是使用那些所見(jiàn)即所得的網(wǎng)頁(yè)編輯來(lái)寫(xiě)ASP,可能會(huì)發(fā)生一些意想不到的離奇狀態(tài)。
通吃各家瀏覽由于ASP程序是在網(wǎng)絡(luò)服務(wù)器端中執(zhí)行,執(zhí)行結(jié)果所產(chǎn)生的HTML文件適用于不同的瀏覽器。
語(yǔ)言相容性高
ASP與所有的ActiveXScript語(yǔ)言都相容,除了可結(jié)合HTML,VBScript、JavaScript、ActiveX服務(wù)器組件來(lái)設(shè)計(jì)外,并可經(jīng)由“plug-In(外掛組件模組)的方式,使用其他廠商(ThirdParty)所提供的語(yǔ)言。
隱密安全性高
如果我們?cè)跒g覽器中直接查看網(wǎng)頁(yè)的原始代碼,就只能看到HTML文件,原始的ASP程序代碼是看不到的!這是因杰ASP程序先于網(wǎng)站服務(wù)(WebServer)端執(zhí)行后,將結(jié)果轉(zhuǎn)換成標(biāo)準(zhǔn)HTML文件,再傳送到客戶端(Client)的瀏覽器上,因此,我們所辛苦撰寫(xiě)的ASP程序并不會(huì)輕易地被看見(jiàn)進(jìn)而被盜用。
易于操控?cái)?shù)據(jù)庫(kù)
ASP可以輕易地通過(guò)ODBC(OpenDatabaseConnectivity)驅(qū)動(dòng)程序連接各種不同的數(shù)據(jù)庫(kù),例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可將“文本文件”或是”Excel”文件當(dāng)成數(shù)據(jù)庫(kù)用。
面向?qū)ο髮W(xué)習(xí)容易
ASP具備有面向?qū)ο螅∣bject-Oriented)功能,學(xué)習(xí)容易,ASP提供了五種方便能力強(qiáng)大的內(nèi)建對(duì)象:Request、Response、Sever、Application以及Session,同時(shí),若使用ASP內(nèi)建的“Application”對(duì)象或”Session”對(duì)象所撰寫(xiě)出來(lái)的ASP程序可以在多個(gè)網(wǎng)頁(yè)之間暫時(shí)保存必要的信息。
ASP的六大內(nèi)部對(duì)象
對(duì)象名稱功能描述
RequestResponseServerSessionApplicationObjectContext從客戶端取得信息將信息送給客戶端提供一些Web服務(wù)器工具儲(chǔ)存在一個(gè)Session內(nèi)的用戶信息,該信息僅可被該用戶訪問(wèn)在一個(gè)ASP-Application中讓不同的客戶端共享信息可以用來(lái)配合MicrosoftTransaction服務(wù)器進(jìn)行分布式事務(wù)處理
所以我選擇了ASP結(jié)合Frontpage架構(gòu)長(zhǎng)沙市工商職業(yè)中專學(xué)校網(wǎng)站
文章出處:作者:時(shí)間:2005-02-16
第二章網(wǎng)站總體分析與設(shè)計(jì)
2.1網(wǎng)站系統(tǒng)分析
根據(jù)前面的設(shè)計(jì)思想進(jìn)行分析,按照系統(tǒng)開(kāi)發(fā)的基本觀點(diǎn)對(duì)網(wǎng)站進(jìn)行分解,從內(nèi)容上可對(duì)網(wǎng)站作如下劃分:
l學(xué)校風(fēng)采通過(guò)學(xué)校概括、教師風(fēng)采、校園之星及部分圖片等內(nèi)容來(lái)展現(xiàn)。
l優(yōu)點(diǎn)特色通過(guò)新聞、生動(dòng)活潑的教育教學(xué)欄目來(lái)展現(xiàn)。
l信息通過(guò)公告欄、信息查詢等欄目來(lái)實(shí)現(xiàn),內(nèi)容有招生政策、
活動(dòng)安排等。
l部分校務(wù)根據(jù)校務(wù)的公開(kāi)程度與參與人數(shù)的多少,特選擇圖書(shū)管
理、評(píng)優(yōu)、考試查分、家校聯(lián)系四大校務(wù)在網(wǎng)上實(shí)現(xiàn)。
2.2主頁(yè)設(shè)計(jì)
網(wǎng)站主頁(yè)采用靜、動(dòng)相結(jié)合的方式,即靜態(tài)的主畫(huà)面和動(dòng)態(tài)的圖片相結(jié)合,體現(xiàn)學(xué)校的勃勃生氣,靜態(tài)主頁(yè)方式介紹學(xué)校風(fēng)采、優(yōu)點(diǎn)特色、信息,對(duì)于四大校務(wù),就得利用ASP與數(shù)據(jù)庫(kù)結(jié)合的技術(shù)建立數(shù)據(jù)庫(kù)查詢管理系統(tǒng),采用交互式的動(dòng)態(tài)的web畫(huà)面來(lái)實(shí)現(xiàn)。
主頁(yè)結(jié)構(gòu)圖
注:帶下劃線的表示是鏈接方式
2.3數(shù)據(jù)庫(kù)設(shè)計(jì)
采用的數(shù)據(jù)庫(kù)是MicrosoftAccess,擬建立teach.mdb庫(kù)文件,包含如下幾個(gè)表文件:
allmessage留言信息表
Libbooks圖書(shū)信息表
Libcategories圖書(shū)類別信息表
Libemps圖書(shū)館用戶信息表;
stud學(xué)生信息表
第三章詳細(xì)設(shè)計(jì)
3.1家長(zhǎng)學(xué)校聯(lián)絡(luò)簿
3.1.1功能:
利用SQL語(yǔ)法過(guò)濾特定的家長(zhǎng)留言意見(jiàn),讓老師可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答,同時(shí),家長(zhǎng)在發(fā)表個(gè)人意見(jiàn)時(shí),若認(rèn)為意見(jiàn)內(nèi)容涉及敏感的話題或是意見(jiàn)內(nèi)容涉及私人隱私,都可用“悄悄話”的方式發(fā)言,這些“悄悄話”將不會(huì)被顯示出來(lái)讓大家看到,當(dāng)然,老師擁有管理的能力,只要以密碼登錄管理模式,就可以進(jìn)行各個(gè)學(xué)生家長(zhǎng)的單獨(dú)意見(jiàn)回復(fù),而且還能看到家長(zhǎng)們所留下的“悄悄話”。
3.1.2組成構(gòu)造
共分成六大部分:
1,意見(jiàn)留言結(jié)果網(wǎng)頁(yè)guest.asp:用來(lái)顯示家長(zhǎng)發(fā)言與老師回復(fù)內(nèi)容,同時(shí)還具備一般模式與管理模式兩種顯示方法。
2,家長(zhǎng)發(fā)言表單網(wǎng)頁(yè)addmsg.asp:讓學(xué)生家長(zhǎng)填寫(xiě)發(fā)言內(nèi)容并選擇發(fā)言性質(zhì)。
3,家長(zhǎng)發(fā)言數(shù)據(jù)處理ASP程序add.asp:處理家長(zhǎng)發(fā)表的意見(jiàn)數(shù)據(jù),同時(shí)將這些意見(jiàn)數(shù)據(jù)記錄起來(lái)并將網(wǎng)頁(yè)顯示轉(zhuǎn)向至意見(jiàn)留言結(jié)果網(wǎng)頁(yè)。
4,老師回復(fù)表單網(wǎng)頁(yè)teachans.asp:讓老師針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答。
5,老師回復(fù)數(shù)據(jù)處理ASP程序anssave.asp:處理老師回復(fù)的數(shù)據(jù)內(nèi)容,同時(shí)將這些意見(jiàn)數(shù)據(jù)起來(lái)并將網(wǎng)頁(yè)顯示轉(zhuǎn)向至意見(jiàn)留言結(jié)果網(wǎng)頁(yè)。
6,數(shù)據(jù)表文件allmessage:用來(lái)儲(chǔ)存家長(zhǎng)發(fā)言數(shù)據(jù)與老師回復(fù)數(shù)據(jù)的Access類型數(shù)據(jù)庫(kù)文件。
“數(shù)據(jù)表文件”負(fù)責(zé)存放家長(zhǎng)發(fā)言數(shù)據(jù)與老師回復(fù)內(nèi)容的數(shù)據(jù)記錄,為Access類型的庫(kù)文件,將它定名為:“message.mdb”。
下圖為家庭聯(lián)絡(luò)簿的組成與流程圖:
老師回復(fù)
家長(zhǎng)留言
讀入寫(xiě)入
寫(xiě)入
3.1.3數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)
數(shù)據(jù)庫(kù)文件”teach.mdb“中的數(shù)據(jù)表”allmessage“的欄目設(shè)置,如下圖:
字段名字段類型
3.1.4界面設(shè)計(jì)與重點(diǎn)、難點(diǎn)代碼的設(shè)計(jì)
數(shù)據(jù)庫(kù)與留言顯示程序網(wǎng)頁(yè)
家長(zhǎng)發(fā)言與老師回復(fù)的內(nèi)容數(shù)據(jù)全部?jī)?chǔ)存在數(shù)據(jù)庫(kù)中,要在網(wǎng)頁(yè)中顯示目前的家長(zhǎng)發(fā)言與老師回復(fù)數(shù)據(jù),必須先進(jìn)行數(shù)據(jù)庫(kù)的鏈接與打開(kāi),要鏈接數(shù)據(jù)庫(kù)我們必須使用ADO對(duì)象群的Connection對(duì)象;而要打開(kāi)數(shù)據(jù)庫(kù)則必須使用ADO對(duì)象群的Recordset對(duì)象,程序:
setcn=server.createobject("adodb.connection")
cn.open"filedsn=c:\programfiles\commonfiles\odbc\datasources\msaccessdatabase.dsn"
setrs=server.createobject("adodb.recordset")
sql="select*fromallmessageorderby留言時(shí)間desc"
rs.opensql,cn,1,1
Recordset對(duì)象是負(fù)責(zé)瀏覽與操作從數(shù)據(jù)庫(kù)取出來(lái)的數(shù)據(jù),Connection對(duì)象只負(fù)責(zé)與數(shù)據(jù)庫(kù)進(jìn)行鏈接的動(dòng)作,并不能使用數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù),因此必須建立一個(gè)可以存取數(shù)據(jù)庫(kù)數(shù)據(jù)的Recordset對(duì)象,
使用RS.Open方法存取”teach.mdb”數(shù)據(jù)庫(kù)
RS.OpenSQL,CN,1,1
使用open方法來(lái)打開(kāi)數(shù)據(jù)表或執(zhí)行Select指令參數(shù)設(shè)置如下:
1,參數(shù)一(SOURCE):為欲打開(kāi)的數(shù)據(jù)表或SQL指令。
2,參數(shù)二(ActionConnection):指定一個(gè)已打開(kāi)的數(shù)據(jù)庫(kù)對(duì)象,將此參數(shù)設(shè)為鏈接我們已經(jīng)建立好的Connection對(duì)象“CN”。
3,參數(shù)三(CursorType):指定Recordset的打開(kāi)類型,1為可讀寫(xiě)且可自由移動(dòng)。
4,參數(shù)四(LockType):指定鎖定類型,1為只讀。
數(shù)據(jù)排序與SQL指令
1.Select指令的篩選語(yǔ)句:
格式:Select…From
在SQL語(yǔ)言中:“Select”數(shù)據(jù)表“中選取某些“欄位”的數(shù)據(jù).
2.如果要選取的數(shù)據(jù)表數(shù)據(jù)包含了一個(gè)以上的欄位,則我們可以利用“,”逗號(hào)來(lái)欄位名稱隔開(kāi)。
3.如果要選取的數(shù)據(jù)表數(shù)據(jù)包含了全部的欄位,則可以利用萬(wàn)用字符“*”來(lái)代表全部的欄位。
可排序數(shù)據(jù)的Select指令
1.當(dāng)我們希望被選取出來(lái)的數(shù)據(jù)記錄數(shù)據(jù)能夠依據(jù)某個(gè)或某幾個(gè)欄位的內(nèi)容來(lái)排序時(shí),只要將這些排序依據(jù)的欄位擺放在“OrderBy“保留字之后,然后將這處排序的語(yǔ)句連接在”Select…From“后面就行了。
2.“OrderBy“默認(rèn)的排序方式是“由小排到大”,但若是希望排序方式是“由大排到小”,則我們可在欄位名稱后再加上“Desc“保留字!將排序方式改為”由大排到小“。
在“顯示留言意見(jiàn)”網(wǎng)頁(yè)中的打開(kāi)數(shù)據(jù)庫(kù)ASP程序中的語(yǔ)句:
SELECT*Fromallmessageorderby留言日期Desc
功能為:從數(shù)據(jù)表“allmessage“中取出所有欄位的數(shù)據(jù),并將取出的數(shù)據(jù)記錄內(nèi)容依照”留言日期“欄位使用的”由大排到小“排序方式進(jìn)行排序。
留言顯示網(wǎng)頁(yè)的管理模式
“顯示留言意見(jiàn)”的網(wǎng)頁(yè)就必須具備顯示模式選擇的功能,當(dāng)顯示模式在一般情況時(shí)要能顯示家長(zhǎng)們的一般性發(fā)言,同時(shí)還得將“悄悄話“的發(fā)言隱藏起來(lái)。當(dāng)老師以密碼登錄成為管理模式時(shí),則必須將一般性發(fā)言與悄悄話發(fā)言的數(shù)據(jù)全部顯示出來(lái),同時(shí)還得讓老師們可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答。
這兩個(gè)情況是通過(guò)密碼登錄管理模式的ASP程序?qū)崿F(xiàn)的:
<formmethod="post">
<%ifsession("checkedit")="yes"then%>
<inputtype="hidden"value="yes"name="goexit">
<inputtype="submit"value="離開(kāi)管理模式">
<%else%>
密碼:<inputtype="password"name="password"size="4"maxlength="4">  <inputtype="submit"value="教師管理">
<%endif%>
</form>
在這段網(wǎng)頁(yè)語(yǔ)句中,利用Session對(duì)象來(lái)記錄目前的工作模式。當(dāng)我們第一次進(jìn)入“顯示留言意見(jiàn)”網(wǎng)頁(yè)的時(shí)候,我們所見(jiàn)的網(wǎng)頁(yè)畫(huà)面一定是一般!因?yàn)镾ession尚未被建立,因此它的“變量”值一定不會(huì)是“yes”,所以網(wǎng)頁(yè)中會(huì)出現(xiàn)一個(gè)輸入密碼進(jìn)入“教師管理”模式的欄位,只有當(dāng)我們輸入密碼按下“教師管理”的按鈕組織上發(fā)ASP程序中的進(jìn)入管理模式語(yǔ)句后,Session對(duì)象才會(huì)被建立,同時(shí),“checkedit“Session對(duì)象變量值被設(shè)置為“yes“,所以我們就進(jìn)入了能將一般性發(fā)言與悄悄話發(fā)言的數(shù)據(jù)全部顯示出來(lái),同時(shí)還讓教師們可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立回答的管理模式頁(yè)面。
留言顯示網(wǎng)頁(yè)的分頁(yè)
當(dāng)家長(zhǎng)的發(fā)言與老師回復(fù)的數(shù)據(jù)筆數(shù)太多時(shí),一次要將全部的數(shù)據(jù)內(nèi)容顯示在網(wǎng)頁(yè)中,等待網(wǎng)頁(yè)下載的時(shí)間太長(zhǎng)了,因此采用固定筆數(shù)分頁(yè)瀏覽方式來(lái)顯示網(wǎng)頁(yè)。
要進(jìn)行分頁(yè)顯示,得先知道目前有多少筆的留言數(shù)據(jù),而留言數(shù)據(jù)筆數(shù)可以通過(guò)Recordset對(duì)象的“Recordcount“(記錄個(gè)數(shù))屬性得知,我們將每10筆數(shù)據(jù)為一單位分頁(yè)顯示:
count=rs.recordcount
ifcount/10>(count\10)then
totalpage=(count\10)+1
elsetotalpage=(count\10)
endif
“/”為浮點(diǎn)數(shù)除法,“\”為整數(shù)除法。
跳頁(yè)選擇的ASP程序語(yǔ)句
所有的發(fā)言數(shù)據(jù)采用固定筆數(shù)分頁(yè)瀏覽的方式來(lái)顯示后,還要提供一個(gè)跳頁(yè)鏈接顯示的功能,讓瀏覽者可以選擇希望瀏覽的頁(yè)次進(jìn)得瀏覽,ASP程序語(yǔ)句:
pagecount=0
rs.movefirst
ifrequest.querystring("topage")<>""thenpagecount=cint(request.querystring("topage"))
ifpagecount<=0thenpagecount=1
ifpagecount>totalpagethenpagecount=totalpage
rs.move(pagecount-1)*10
發(fā)言表單網(wǎng)頁(yè)制作
insetu3
表單的參數(shù)
表單的Action參數(shù):Action參數(shù)是用來(lái)指定Server端處理此一表單數(shù)據(jù)內(nèi)容的程序,此處表單處理ASP程序?yàn)椤癮dd.asp“,
表單的Mothed參數(shù):要將表單傳送至Server端的方式有兩種,設(shè)置值分別為GET及POST,若設(shè)置為POST,則瀏覽器會(huì)等Server端來(lái)讀取數(shù)據(jù),若設(shè)置為GET,則當(dāng)我們按下送出按鈕時(shí),瀏覽器會(huì)立即將表單中的數(shù)據(jù)內(nèi)傳送出去。利用POST方法,在傳送的數(shù)據(jù)上將不受限制,利用GET方法傳送的數(shù)據(jù)量則大約只有2K左右。
留言處理程序
要將家長(zhǎng)發(fā)言數(shù)據(jù)作后續(xù)處理及將這些數(shù)據(jù)內(nèi)容存入數(shù)據(jù)庫(kù),須利用添加數(shù)據(jù)記錄的InsertInto指令,然后再寫(xiě)入數(shù)據(jù)庫(kù)文件中:
Insetinto指令語(yǔ)句格式:
Insertinto數(shù)據(jù)表名(欄目名)values(欄目值)
sql="insertintoallmessage(家長(zhǎng)姓名,留言主題,聯(lián)絡(luò)信箱,留言內(nèi)容,私人公開(kāi),留言時(shí)間,班級(jí))values("
sql=sql&"''''"&parent&"'''',"
sql=sql&"''''"&subject&"'''',"
sql=sql&"''''"&email&"'''',"
sql=sql&"''''"&memo&"'''',"
sql=sql&"''''"&personal&"'''',"
sql=sql&"''''"&now&"'''',"
sql=sql&"''''"&bj&"'''')"
cn.executesql
回復(fù)表單程序網(wǎng)頁(yè)
必須讓老師們可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答,
使用Select…From…Where篩選語(yǔ)句
sql="select*fromallmessagewhere(編號(hào)="&ID&")"
rs.opensql,cn,1,3
然后將特定的家長(zhǎng)發(fā)言數(shù)據(jù)放在表單,方法是將數(shù)據(jù)庫(kù)中的數(shù)據(jù)取出來(lái),然后放在表單欄位中:
“家長(zhǎng)姓名“欄位網(wǎng)頁(yè)語(yǔ)句標(biāo)簽
<tdbgcolor="#CCCCFF"><fontsize="2"><%=RS("家長(zhǎng)姓名")%><font></td>
“留言主題“欄位網(wǎng)頁(yè)語(yǔ)句標(biāo)簽
<tdbgcolor="#CCCCFF"><fontsize="2"><%=RS("留言主題")%></font></td>
“留言內(nèi)容“欄位網(wǎng)頁(yè)語(yǔ)句標(biāo)簽
<tdbgcolor="#CCCCFF"><fontsize="2"><%=RS("留言內(nèi)容")%><font></td>
老師在回復(fù)欄位中所填入的數(shù)據(jù),必須送給處理老師回復(fù)數(shù)據(jù)的ASP程序”anssave.asp”來(lái)記錄以及處理這些回復(fù)數(shù)據(jù)。當(dāng)老師填寫(xiě)好回復(fù)發(fā)言的數(shù)據(jù)后按下“送出回復(fù)”按鈕后,表單中的數(shù)據(jù)內(nèi)容就會(huì)以“POST”的方式由SEVER端讀取,然后將數(shù)據(jù)內(nèi)容交由處理老師回復(fù)數(shù)據(jù)的ASP程序“anssave.asp”來(lái)將數(shù)據(jù)內(nèi)容寫(xiě)入數(shù)據(jù)庫(kù)。
3.2網(wǎng)上圖書(shū)館
網(wǎng)上圖書(shū)館將學(xué)校圖書(shū)館圖書(shū)放到網(wǎng)絡(luò)上供人借閱,這樣不僅方便了校內(nèi)的學(xué)生與教職員工使用圖書(shū)館的資源,還為圖書(shū)館管理員提供了一種簡(jiǎn)便地管理圖書(shū)館的方法.
3.2.1功能
網(wǎng)上圖書(shū)館系統(tǒng)可以進(jìn)行圖書(shū)的出借和歸還.還可以在系統(tǒng)中按照多種字段對(duì)圖書(shū)進(jìn)行查找,還可以瀏覽某個(gè)種類的所有圖書(shū).該應(yīng)用程序也為圖書(shū)館管理員提供了一些功能,如添加、編輯以及刪除圖書(shū)等,或者在分類層次結(jié)構(gòu)中添加新的種類。
3.2.2系統(tǒng)的層次結(jié)構(gòu)
下圖的每個(gè)方框代表校園圖書(shū)館網(wǎng)站中的一個(gè)頁(yè)面。除了只包含HTML的Search頁(yè)面外,其他的均為ASP頁(yè)面。因?yàn)槊總€(gè)圖書(shū)的頁(yè)面都不同,所以大多數(shù)的頁(yè)面實(shí)際上都是多頁(yè)面。
3.2.3數(shù)據(jù)庫(kù)設(shè)計(jì)
本系統(tǒng)共使用3個(gè)數(shù)據(jù)表:
LibBooks表包含與圖書(shū)有關(guān)的所有數(shù)據(jù)。該表中的字段內(nèi)容的圖書(shū)的通用信息。另外,對(duì)于已經(jīng)出借的圖書(shū),該表中還包含借閱該圖書(shū)的用戶的ID號(hào),以及圖書(shū)的狀態(tài)。
表視圖如下:
字段名意義字段類型字段名意義字段類型
bookid書(shū)號(hào)(主鍵)數(shù)字(nonull)status狀態(tài)文本
title書(shū)名文本checkedoutto用戶id數(shù)字
author著者文本reservedby用戶學(xué)號(hào)數(shù)字
Subject主題文本description描述文本
IsbnIsbn號(hào)文本keywords關(guān)鍵字文本
LibCategories表包含Library中的所有類別,在訪問(wèn)者瀏覽圖書(shū)列表時(shí)將會(huì)用到這些類別。每個(gè)類別都可以作為另外類別的父類別。有一個(gè)特殊的類別,Top-Level,沒(méi)有出現(xiàn)在類別列表中,但是可以作為其他任何類別的父類別。
字段名意義字段類型
Categoryname類別文本(noll)
parentcategory父類別文本(noll)
LibEmps表包含可以訪問(wèn)圖書(shū)館網(wǎng)站的用戶信息。該表包含一些通用的信息字段,比如用于進(jìn)入圖書(shū)館的用戶密碼等。
字段名意義字段類型字段名意義字段類型
empid用戶id(主鍵nonull)數(shù)字password用戶密碼文本
Empname用戶姓名文本manager管理員代號(hào)數(shù)字
emailaddress用戶郵箱文本
圖書(shū)館數(shù)據(jù)庫(kù)的數(shù)據(jù)關(guān)系如圖9-22所示。其中表LibEmps和表LibCategories與表LibBooks之間都是一對(duì)多的關(guān)系。每個(gè)雇員都可以借閱多本圖書(shū),每個(gè)類別都可以包含多本圖書(shū)。
3.2.3界面設(shè)計(jì)與重點(diǎn)代碼的設(shè)計(jì)
網(wǎng)上圖書(shū)館系統(tǒng)有兩種用戶,一是管理員。另一種是只允許使用圖書(shū)館系統(tǒng),而沒(méi)有管理功能的一般用戶。訪問(wèn)者進(jìn)入網(wǎng)站,首先要進(jìn)行登錄,如下圖所示。登錄頁(yè)面(index.asp)
訪問(wèn)者輸入E-mail地址和密碼來(lái)登錄,然后單擊“登錄”按鈕。輸入的數(shù)據(jù)提交后與數(shù)據(jù)庫(kù)中的用戶表進(jìn)行匹配。
須創(chuàng)建一個(gè)記錄來(lái)保存基于訪問(wèn)者登錄的用戶信息
setRSFindEmp=conn.Execute("selectEmpID,ManagerfromLibEmpswhere"_
&"EmailAddress=''''"&Request.Form("EmailAddress")&"''''and"_
&"Password=''''"&Request.Form("Password")&"''''")
ifRSFindEmp.EOFthen
TheMessage="密碼或email地址不對(duì)."
else
Session("EmpID")=RSFindEmp("EmpID")
Session("Manager")=RSFindEmp("Manager")
Response.Redirect"../yk.htm"
endif
表單域EmailAddress和Password用于Where了句中來(lái)獲取一個(gè)記錄。如果訪問(wèn)者輸入了一個(gè)無(wú)效的用戶名,則記錄集中將不會(huì)返回匹配的記錄。我們可以通過(guò)查看EOF標(biāo)記來(lái)判斷一個(gè)記錄集是否為空。為空,則訪問(wèn)者將被拒絕進(jìn)入該系統(tǒng)。不為空,則訪問(wèn)者的EmpID值和Manager值將從記錄集中返回。寫(xiě)入Session變量,變量將在整個(gè)網(wǎng)站的所有網(wǎng)頁(yè)中都是有效的。這些變量的存在與否及其取值將用于確定是否允許進(jìn)入一個(gè)特定的網(wǎng)頁(yè),同時(shí)也用于訪問(wèn)者進(jìn)行書(shū)目的歸還和借閱操作。
圖書(shū)館菜單頁(yè)面
圖書(shū)館菜單頁(yè)面包含指向其他4個(gè)頁(yè)面的鏈接:管理頁(yè)面、搜索頁(yè)面、圖書(shū)列表頁(yè)面和主頁(yè)面。還有一個(gè)可顯示用戶所借書(shū)籍的按紐。如果訪問(wèn)者是圖書(shū)館管理員,則菜單界面如圖所示。如果訪問(wèn)者不是圖書(shū)館管理員,則看到如圖所示的界面。非管理員的訪問(wèn)者的界面上沒(méi)有指向管理員菜單頁(yè)面的鏈接。
實(shí)現(xiàn)辦法:訪問(wèn)者登錄時(shí)在登錄頁(yè)面上的創(chuàng)建的會(huì)話變量Session用于從數(shù)據(jù)庫(kù)中獲取訪問(wèn)者的有關(guān)信息,表示它是否是管理員。如果值為1,就表明訪問(wèn)者是一個(gè)管理員,則用如下代碼寫(xiě)入一個(gè)指向管理員頁(yè)面的鏈接:
<%IfSession("Manager")=1then%>
<AHREF="../html/management_menu.asp">管理員菜單</A>
<%endif%>
通過(guò)按紐B1是否為空來(lái)判斷要不要顯示用戶所借圖書(shū),利用一個(gè)記錄集來(lái)獲取訪問(wèn)者已經(jīng)借出了的所有圖書(shū)的列表。
ifNOTisempty(Request.Form("B1"))then
setRSBooks=conn.Execute("selectBookID,TitlefromLibBookswhere"_
&"CheckedOutTo="&Session("EmpID"))
endif
再用循環(huán)語(yǔ)句將所借書(shū)以表格形式顯示出來(lái)。
<tableborder=1width="90%">
<%ifNOTisempty(Request.Form("B1"))then
DoUntilRSBooks.EOF%>
<TR>
<TDWIDTH=40%height="20"><%Response.WriteRSBooks("Title")%></td></tr>
<%RSBooks.MoveNext
loop
endif
%>
</table>
循環(huán)將遍歷Rsbooks記錄集中的每個(gè)記錄,直到該記錄集結(jié)束:
該網(wǎng)站中的所有ASP頁(yè)面都會(huì)在訪問(wèn)者訪問(wèn)之前對(duì)其進(jìn)行登錄檢查。這樣就可以避免訪問(wèn)者通過(guò)輸入某個(gè)頁(yè)面地址然后在沒(méi)有登錄的情況下直接進(jìn)入該頁(yè)面的情況發(fā)生。此外,每個(gè)管理頁(yè)面都要確認(rèn)訪問(wèn)者是管理員。
管理菜單頁(yè)面
管理菜單頁(yè)面有一個(gè)HTML表單,根據(jù)選擇的按鈕的不同,可以進(jìn)行5種不同的操作:圖書(shū)的歸還、圖書(shū)的編輯、圖書(shū)的刪除、圖書(shū)的添加和類別的添加。不管選擇了哪一個(gè)按鈕,該表單都提交人其自身進(jìn)行處理。
要進(jìn)行圖書(shū)的歸還、圖書(shū)的編輯、圖書(shū)的刪除三種操作,須先進(jìn)行搜索,找到該書(shū)后,由圖書(shū)B(niǎo)ook.asp返回一個(gè)鏈接:
<%IfSession("Manager")=1then%>
<AHREF="../html/management_menu.asp?title=<%response.writeRSBooks("Title")%>&BOOKID=<%response.writeRSBooks("BOOKID")%>">管理員菜單</A>
<%endif%>
而管理者頁(yè)面通過(guò)下列語(yǔ)句
<%=request.querystring("title")%>
<inputzztype=hiddenname="BOOKID1"value="<%=request.querystring("BOOKID")%>>
這樣就將所找到的書(shū)的書(shū)號(hào)BookID、書(shū)名Title傳遞管理者頁(yè)面。再進(jìn)行所須操作。共有3個(gè)不同的銨紐,可以進(jìn)行3種操作。若單擊“修改”鈕:
則重定向到編輯圖書(shū)頁(yè)面,同時(shí)把Bookid傳遞給該頁(yè)面。
Response.Redirect"./edit_book.asp?BOOKID="&request("BOOKID1")
將其他的情況需要建立到數(shù)據(jù)庫(kù)的連接:
setconn=server.createobject("adodb.connection")
Conn.Open("FILEDSN=c:\ProgramFiles\CommonFiles\ODBC\DataSources\msaccessdatabase.dsn")
ifNOTisempty(Request.Form("Delete"))andrequest("BOOKID1")<>""then
conn.Execute"deletefromLibBookswhereBOOKID="&request("BOOKID1")
endif
if(NOTisempty(Request.Form("checkin")))andrequest("BOOKID1")<>""then
conn.Execute"updateLibBookssetcheckedoutto=0,status=''''Available''''whereBookID="&Request("BOOKID1")
endif
頁(yè)面中的添加新的種類部分包含一個(gè)文本控件和一個(gè)選擇控件。其中選擇控件是用所有已經(jīng)存在的類別列表進(jìn)行填充的,包括特殊類別Toplevel,該類別表明當(dāng)前類別是處于類別層次結(jié)構(gòu)中的最頂層。代碼如下:
先用一個(gè)記錄集來(lái)填充父類別選擇控件:
setRSCategories=conn.Execute("selectCategoryNamefromLibCategoriesorderbyCategoryName")
再用下列循環(huán)語(yǔ)句:
<%
DoUntilRSCategories.EOF
%>
<OPTIONVALUE="<%response.writeRSCategories("CategoryName")%>"><%response.writeRSCategories("CategoryName")%></OPTION>
<%
RSCategories.MoveNext
Loop
%>
遍歷RSCategories記錄集中的每個(gè)記錄,并作為一個(gè)選項(xiàng)添加到列表中,而記錄集中CategoryName同時(shí)作為顯示值和傳遞值:
本頁(yè)面還包含一個(gè)指向添加圖書(shū)頁(yè)面的鏈接。
搜索結(jié)果頁(yè)面
搜索頁(yè)面的代碼獲取與訪問(wèn)者查找規(guī)則相匹配的圖書(shū),然后將這些圖書(shū)顯示給訪問(wèn)者。
搜索頁(yè)面上的表單包含一個(gè)選擇控件和一個(gè)文本控件。選擇控件中的選項(xiàng)是用可搜索的字段填充的:
需要用一個(gè)記錄集來(lái)保存與訪問(wèn)者的查找規(guī)則相匹配的記錄:
setRSBooks=conn.Execute("selectBookID,Author,Title,SubjectfromLibBookswhere"_
&Request.Form("SearchField")&"Like''''%"&Request.Form("SearchCriteria")&"%''''")
注意:,符號(hào)%表示的是一個(gè)廣義搜索。這一點(diǎn)類似于ACCESS中的符號(hào)*。
然后將所找到的書(shū)以表格形式顯示出來(lái)。代碼如下:
<%DoUntilRSBooks.EOF%>
<TRVALIGN="top"ALIGN="left">
<TDWIDTH=40%height="20"><B>書(shū)名:</B><AHREF="../html/book.asp?BookID=<%Response.WriteRSBooks("BookID")%>"><%Response.WriteRSBooks("Title")%></A></TD>
<tdwidth=20%height="20"><B>著者:</B><%Response.WriteRSBooks("Author")%></td>
<tdwidth=30%height="20"><B>主題:</B><%Response.WriteRSBooks("Subject")%></td>
<%RSBooks.MoveNext
Loop%>
圖書(shū)頁(yè)面
圖書(shū)頁(yè)面的代碼顯示圖書(shū)的有關(guān)信息,以及管理圖書(shū)的出借操作。
該頁(yè)面通過(guò)Querystring傳遞BookID
ifisempty(Request.QueryString("BookID"))then
Response.Redirect"./search.html"
endif
如果其中不存在,則訪問(wèn)者將被重定向到搜索頁(yè)面:
如果同時(shí)傳遞表單中包含的變量Action不為空,則表明訪問(wèn)者正借閱該圖書(shū):
ifNotisempty(Request.QueryString("Action"))then
在這種情況下,需要將圖書(shū)狀態(tài)改為Checkout,同時(shí)需要將Checkedoutto字段修改為該訪問(wèn)者:
conn.Execute"updateLibBookssetStatus=''''CheckedOut'''',"_
&"CheckedOutTo="&Session("EmpID")&"whereBookID="_
&Request.QueryString("BookID")
Response.Redirect"./library_menu.asp"
endif
然后將該訪問(wèn)者重定到圖書(shū)館菜單頁(yè)面:
下一步,利用圖書(shū)的狀態(tài)來(lái)確定不同的鏈接
未借出時(shí)鏈接如下:
ifRSBooks("status")="Available"then
LinkText="<AHREF=""../html/book.asp?Action=CheckOut&BookID="_
&Request.QueryString("BookID")&""">借這本書(shū)</A>"
如果圖書(shū)已經(jīng)借出,就創(chuàng)建一個(gè)不同的消息,并將鏈接設(shè)置為指向Librarymenu頁(yè)面:
LinkText="<AHREF=""../html/library_menu.asp"">圖書(shū)已出借,返回主菜單。</A>"
最后根據(jù)是否是管理員,顯示管理員菜單鏈接。
<%IfSession("Manager")=1then%><AHREF="../html/management_menu.asp?title=<%response.writeRSBooks("Title")%>&BOOKID=<%response.writeRSBooks("BOOKID")%>">管理員菜單</A><%endif%>
3.3網(wǎng)上評(píng)優(yōu)投票系統(tǒng)
3.3.1功能:
能實(shí)現(xiàn)全校性的評(píng)選,快捷、公平,且有效,不允許做票。
3.3.2組成構(gòu)造
這個(gè)系統(tǒng)由3個(gè)部分組成——投票頁(yè)面vote.htm,處理投票結(jié)果的腳本,顯示投票頁(yè)面。
3.3.3數(shù)據(jù)表的設(shè)計(jì):
3.3.4界面設(shè)計(jì)與重點(diǎn)、難點(diǎn)代碼設(shè)計(jì)
投票頁(yè)面
該頁(yè)面是一個(gè)純HTML文件,它讓用戶選擇自己想選舉的候選人,并填寫(xiě)自己的詳細(xì)資料,以確認(rèn)投票的有效性。頁(yè)面顯示如圖所示。
表單處理腳本
在vote.htm中各項(xiàng)數(shù)據(jù)都填寫(xiě)完畢后,單擊確定投票按鈕,表單的數(shù)據(jù)就被提交,
本次評(píng)優(yōu)共有4個(gè)候選人,但只能選兩個(gè)。故用復(fù)選框。
投票的有效性通過(guò)是否是本校學(xué)生,且是否投過(guò)票來(lái)判斷。
ifrequest("passno")<>""then
sql="select*fromstudwherepassword="&"''''"&request("passno")&"''''"&"andyitu=0"
setrs=cn.execute(sql)
ifrs.eofthen%>
<h2align=center><%response.write"你無(wú)權(quán)投票"%></h2>
本設(shè)計(jì)允許少選,不允許多選。通過(guò)判斷Vote投票界面?zhèn)鬟f過(guò)來(lái)的復(fù)選按紐值的長(zhǎng)度看是否多選。
vo=request("cand")
iflen(vo)>4then%>
<h2align=center><%response.write"多選了,無(wú)效"%></h2>
然后根據(jù)所投的票將對(duì)應(yīng)候選人的投票結(jié)果字段加1,同時(shí)將該投票人的已投字段置為1。
sqq="updatestudsetyitu=1wherepassword="&"''''"&request("passno")&"''''"
cn.execute(sqq)
ifinstr(vo,"1")then
cn.execute("updatestudsetresult=result+1wherename=''''李寧''''")
endif
ifinstr(vo,"2")then
cn.execute("updatestudsetresult=result+1wherename=''''楊蘭''''")
endif
ifinstr(vo,"3")then
cn.execute("updatestudsetresult=result+1wherename=''''江道明''''")
endif
ifinstr(vo,"4")then
cn.execute("updatestudsetresult=result+1wherename=''''段啟文''''")
endif%>
顯示當(dāng)前投票情況show.asp
由于投票處理頁(yè)面已經(jīng)完成了絕大部分的工作,所以顯示結(jié)果頁(yè)面就很簡(jiǎn)單了,其功能是從Stud表文件中讀取候選人所得票數(shù),顯示在頁(yè)面上。
頁(yè)面顯示如圖
值得注意的代碼主要有以下幾處:
該頁(yè)面有自動(dòng)刷新功能,使在線用戶可以盡快的看到最新的選舉情況。我們這里設(shè)定每隔30秒鐘自動(dòng)刷新一次。
<metahttp-equiv="refresh"content="10;URL=show.asp">
顯示投票時(shí),我們采用了while循環(huán),把候選人及其得票數(shù),整齊地顯示在一個(gè)表格中,這種技術(shù)在數(shù)據(jù)庫(kù)查詢結(jié)果的顯示中也經(jīng)常用到。代碼如下:
<%whilenoths.eof%>
<tr>
<tdwidth="100%"><center>
<fontcolor="#8000ff"><big>
<%=hs("name")&""&hs("result")&"票"%>
</big></font>
</center>
</td>
</tr>
<%hs.movenext%>
<%wend%>
3.4達(dá)級(jí)考試在線查分系統(tǒng)與計(jì)數(shù)器的制作
3.4.1功能:
它提供了在線查看成績(jī)??忌梢栽诰W(wǎng)上使用這一系統(tǒng),通過(guò)輸入準(zhǔn)考證編號(hào)來(lái)查詢達(dá)級(jí)考試的結(jié)果。
3.4.2數(shù)據(jù)表的設(shè)計(jì)
與評(píng)優(yōu)系統(tǒng)共用STUd表,表設(shè)計(jì)同上。
3.4.3界面設(shè)計(jì)與重點(diǎn)難點(diǎn)代碼的設(shè)計(jì)
該模塊需要查詢者輸入準(zhǔn)考證號(hào)后來(lái)查看結(jié)果。若ID1不為空時(shí),表示有表單輸入,開(kāi)始查詢數(shù)據(jù)庫(kù)。使用SELECT的SQL指令查詢數(shù)據(jù)庫(kù)的數(shù)據(jù)。先設(shè)定SQL指令,查詢ID符合準(zhǔn)考證編號(hào)Request.Form("ID1")的數(shù)據(jù),下個(gè)“Execute”指令,即可開(kāi)始執(zhí)行存取、查詢數(shù)據(jù)的動(dòng)作了。并將查詢結(jié)果儲(chǔ)存到Recordsets組件RS中。
IFRequest.Form("ID1")<>""THEN
SetConn=Server.CreateObject("ADODB.Connection")
Conn.Open("FILEDSN=c:\ProgramFiles\CommonFiles\ODBC\DataSources\msaccessdatabase.dsn")
SQL="SELECTname,id,scoreFROMstudWHEREid=''''"&Request.Form("ID1")&"''''"
SetRS=Conn.Execute(SQL)
若考試通過(guò),則顯示考試的結(jié)果,包括姓名、準(zhǔn)考證編號(hào)、總分和考試結(jié)果,分別由RecordSets組件的RS(0)、RS(1)、RS(2)、RS(3)得到。FS.Field.Count表示RecordSets組件的域的總數(shù),由“forI=0toRS.Fields.count-1”,取得RS(I)各域的數(shù)據(jù)。配合<Table>表格的HTML語(yǔ)法,將結(jié)果填入表格的各單元格中。若還有下一個(gè)數(shù)據(jù),就使用RS.MoveNext移到下一個(gè)位置。
3.4.4頁(yè)面訪問(wèn)計(jì)數(shù)器的制作
利用文件處理組件FILESYSTEM的強(qiáng)大功能來(lái)制作,比用Application對(duì)象計(jì)數(shù)器要好,Application計(jì)數(shù)器當(dāng)有20分鐘沒(méi)有人連上該網(wǎng)頁(yè)或關(guān)機(jī)時(shí),計(jì)數(shù)器會(huì)被歸零。而文件計(jì)數(shù)器卻不會(huì)因時(shí)間而消失。我用Count.txt存放訪問(wèn)人次。代碼如下:
whichfile=server.mappath("pic\count.txt")
setmyfile=server.createobject("scripting.filesystemobject")創(chuàng)建一個(gè)
setthisfile=myfile.opentextfile(whichfile)組件對(duì)象
visit=thisfile.readline
thisfile.close讀取計(jì)數(shù)器數(shù)據(jù)文件Count.txt中的計(jì)數(shù)數(shù)據(jù)
visit=visit+1記錄自加一次
length=len(visit)
fori=1tolength
response.write"<imgsrc="&mid(visit,i,1)&".jpg></img>"將記錄的數(shù)據(jù)用圖片顯示出來(lái)
next
setthisfile=myfile.createtextfile(whichfile,1)將新計(jì)數(shù)數(shù)據(jù)寫(xiě)入文件thisfile.writeline(visit)
setmyfile=nothing
數(shù)字圖片我利用PHOTOSHOP中的文字特效制作了9個(gè)立方數(shù)字:
等
四.系統(tǒng)的使用說(shuō)明與安裝
4.1運(yùn)行環(huán)境要求
Windows98
PersonalWebServer3.0(PWS)
Microsoft?Access2000(9.0.2812)
4.2安裝設(shè)置
A.將本網(wǎng)站拷貝到硬盤上的某一目錄下,如:拷貝至c:\y1下。
B.運(yùn)行PWS,將默認(rèn)的Web站點(diǎn)主目錄設(shè)置為該目錄,如上例應(yīng)為c:\y1;
具體步驟:
a.選擇“高級(jí)”項(xiàng);
b.單擊“編輯屬性”按鈕,在出現(xiàn)的“編輯屬性”對(duì)話框中的“目錄”項(xiàng)中填入“c:\y1”,其他不變,確定;
C.設(shè)置啟動(dòng)默認(rèn)文檔為:yy.asp
五.參考文獻(xiàn)