電 話:18937133779
網(wǎng) 址:http://www.gycxdjzzl.com
郵 箱:zboao@qq.com
這個(gè)問(wèn)題太老了, 說(shuō)實(shí)話, 現(xiàn)在都2020年了, 如果你還在用extjs, 那么老師一看就知道你的代碼是抄的, 抄也沒(méi)抄好
2020年java畢設(shè)項(xiàng)目的正確做法如下
摘要:對(duì)基于XML的多源異構(gòu)數(shù)據(jù)融合、遙感數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)持久化以及用戶(hù)訪問(wèn)控制技術(shù)進(jìn)行了分析和設(shè)計(jì);討論了元數(shù)據(jù)管理系統(tǒng)的實(shí)現(xiàn)技術(shù)、設(shè)計(jì)思想和系統(tǒng)構(gòu)架,注重系統(tǒng)的可移植性、可維護(hù)性和可擴(kuò)展性;實(shí)現(xiàn)了基于J2EE技術(shù)的元數(shù)據(jù)管理系統(tǒng)。?
關(guān)鍵詞:Java 2平臺(tái)企業(yè)版;元數(shù)據(jù)管理;擴(kuò)展標(biāo)記語(yǔ)言?
隨著信息技術(shù)的發(fā)展,產(chǎn)生了海量的信息。如何有效地管理和組織這些海量信息已經(jīng)成為一個(gè)突出的問(wèn)題。元數(shù)據(jù)機(jī)制是解決這一問(wèn)題的有效手段。一些部門(mén)已經(jīng)針對(duì)數(shù)據(jù)在行業(yè)內(nèi)部的應(yīng)用特點(diǎn)來(lái)開(kāi)發(fā)自己的管理系統(tǒng)[1]。目前,在元數(shù)據(jù)管理系統(tǒng)的建設(shè)中存在的主要問(wèn)題是:基于不同操作系統(tǒng)和數(shù)據(jù)庫(kù)的管理平臺(tái)不可移植、安全性差、難以維護(hù)和擴(kuò)展、缺乏統(tǒng)一的建設(shè)模式與內(nèi)容服務(wù)提供方式[2,3]。?
以J2EE平臺(tái)為基礎(chǔ)的各項(xiàng)技術(shù)的成熟為這些問(wèn)題提供了良好的解決方案。J2EE是一種利用Java2平臺(tái)來(lái)簡(jiǎn)化諸多與多級(jí)解決方案的開(kāi)發(fā)、部署和管理相關(guān)的復(fù)雜問(wèn)題的體系結(jié)構(gòu)。J2EE的核心技術(shù)是Java2平臺(tái)的標(biāo)準(zhǔn)版,具有Java語(yǔ)言的特性,是一個(gè)開(kāi)放的、跨平臺(tái)的結(jié)構(gòu),提供了健全的意外事件處理機(jī)制,具有良好的可移植性和擴(kuò)展性。?
基于J2EE的元數(shù)據(jù)管理系統(tǒng)具有高效、穩(wěn)定、可復(fù)用、易維護(hù)的特點(diǎn);獨(dú)立于平臺(tái),可以部署于Microsoft Windows、Linux、UNIX等操作系統(tǒng)之上;可對(duì)Oracle、SQL Server 2000、MySQL等多種數(shù)據(jù)庫(kù)進(jìn)行操作。但是J2EE涉及的技術(shù)種類(lèi)繁多,在實(shí)際應(yīng)用中要根據(jù)需要準(zhǔn)確使用,而且基于J2EE的系統(tǒng)需要具有良好的系統(tǒng)設(shè)計(jì)結(jié)構(gòu),才能最大限度地發(fā)揮優(yōu)勢(shì)。盡管基于J2EE平臺(tái)的系統(tǒng)具有諸多優(yōu)點(diǎn),但目前J2EE還沒(méi)有被廣泛應(yīng)用在元數(shù)據(jù)管理中。本文提出的基于J2EE架構(gòu)的元數(shù)據(jù)管理系統(tǒng)建設(shè)方法和應(yīng)用實(shí)例,是將J2EE引入元數(shù)據(jù)管理的一個(gè)初步嘗試。?
1關(guān)鍵技術(shù)研究?
1.1基于XML的多源異構(gòu)數(shù)據(jù)融合?
各個(gè)部門(mén)采用了不同的元數(shù)據(jù)存儲(chǔ)方式。由于缺乏統(tǒng)一的標(biāo)準(zhǔn),很難對(duì)這些元數(shù)據(jù)進(jìn)行有效的管理和發(fā)布。必須實(shí)現(xiàn)多源異構(gòu)數(shù)據(jù)的融合。?
采用簡(jiǎn)單文本文件作為中間介質(zhì)的信息交換方法不能描述數(shù)據(jù)的結(jié)構(gòu),不適合用來(lái)進(jìn)行復(fù)雜的元數(shù)據(jù)交換。 XML技術(shù)實(shí)現(xiàn)信息交換與共享已經(jīng)成為一種發(fā)展趨勢(shì)。孫君明等人[4]對(duì)基于XML的數(shù)據(jù)交換技術(shù)進(jìn)行了研究。XML是采用線性語(yǔ)法描述樹(shù)狀結(jié)構(gòu)的標(biāo)志語(yǔ)言。作為一種數(shù)據(jù)交換的中間件,XML具有跨平臺(tái)、結(jié)構(gòu)化和自描述性強(qiáng)的特點(diǎn)。?
用XML實(shí)現(xiàn)多源異構(gòu)數(shù)據(jù)融合的過(guò)程如圖1所示。?
在圖1中,首先各地的數(shù)據(jù)提供者通過(guò)瀏覽器將數(shù)據(jù)傳送給服務(wù)器,由服務(wù)器端的XML引擎將這些數(shù)據(jù)轉(zhuǎn)換成標(biāo)準(zhǔn)的XML文檔;再由一些服務(wù)組件根據(jù)需要對(duì)XML文檔進(jìn)行處理,如建立索引等。這樣,多源異構(gòu)數(shù)據(jù)就被轉(zhuǎn)換成了具有統(tǒng)一標(biāo)準(zhǔn)的XML文檔;通過(guò)對(duì)這樣具有固定結(jié)構(gòu)的XML中間件的解析,實(shí)現(xiàn)從XML文檔到數(shù)據(jù)庫(kù)的轉(zhuǎn)換,完成了多源異構(gòu)數(shù)據(jù)的統(tǒng)一存儲(chǔ)[4,5]。進(jìn)行信息發(fā)布時(shí),根據(jù)客戶(hù)端的查詢(xún)條件在數(shù)據(jù)庫(kù)中提取相應(yīng)的結(jié)果集,形成XML文檔,將該文檔發(fā)送至客戶(hù)端;由客戶(hù)端的格式化工具解析該XML文檔,顯示在客戶(hù)端。?
1.2遙感數(shù)據(jù)的分塊存儲(chǔ)?
遙感數(shù)據(jù)(如DEM、TM、ASTER等)具有數(shù)據(jù)量龐大的特點(diǎn),應(yīng)用數(shù)據(jù)庫(kù)中的大數(shù)據(jù)類(lèi)型存儲(chǔ),如Oracle 9i中的Blob、SQL Server 2000中的Image。但是如果將它們直接存入數(shù)據(jù)庫(kù)中會(huì)造成系統(tǒng)效率低下;可采用一種分塊存儲(chǔ)的策略,將原始數(shù)據(jù)分割成大小一致的若干塊,一塊一塊地進(jìn)行存儲(chǔ)。分塊大小要根據(jù)磁盤(pán)的讀寫(xiě)性能和網(wǎng)絡(luò)的傳輸性能確定,過(guò)大或過(guò)小都會(huì)導(dǎo)致系統(tǒng)運(yùn)行效率低下[6]。每塊數(shù)據(jù)以一條記錄的方式進(jìn)行存儲(chǔ),包含數(shù)據(jù)的編號(hào)、經(jīng)緯度、步長(zhǎng)、時(shí)間等信息,并且建立索引。?
1.3數(shù)據(jù)持久化?
為了能使系統(tǒng)部署在任意數(shù)據(jù)庫(kù)系統(tǒng)上,加入了一個(gè)持久化層,作為連接Java應(yīng)用和關(guān)系數(shù)據(jù)庫(kù)的通道。為數(shù)據(jù)庫(kù)中的每張表建立一個(gè)Java對(duì)象,定義好對(duì)象與表之間的對(duì)應(yīng)關(guān)系,只需對(duì)Java對(duì)象進(jìn)行操作,不用關(guān)心SQL語(yǔ)句和系統(tǒng)最終使用的數(shù)據(jù)庫(kù)。持久層作為一個(gè)中間件,封裝對(duì)數(shù)據(jù)庫(kù)的操作,提供接口,隱藏?cái)?shù)據(jù)訪問(wèn)的細(xì)節(jié)[7]。?
1.4用戶(hù)訪問(wèn)控制?
元數(shù)據(jù)的使用人員級(jí)別復(fù)雜,用戶(hù)管理困難。使用RBAC(Role-Based Access Control,基于角色的訪問(wèn)控制)模型,可以提高管理的效率和安全性。RBAC在傳統(tǒng)的用戶(hù)——權(quán)限模型中引入了角色的概念。角色是一組用戶(hù)的集合,也是一個(gè)授權(quán)的集合,它將一組用戶(hù)與權(quán)限聯(lián)系起來(lái)。一個(gè)角色可以與多個(gè)用戶(hù)對(duì)應(yīng),一個(gè)用戶(hù)可以擁有多個(gè)角色,每個(gè)角色可以執(zhí)行多種權(quán)限,每個(gè)權(quán)限可以被多個(gè)角色共享。對(duì)一個(gè)用戶(hù)授予相應(yīng)的角色,使用戶(hù)可以進(jìn)行相應(yīng)的操作[8]。引入角色可以使系統(tǒng)的安全機(jī)制具有很大的靈活性,減少了權(quán)限管理的負(fù)擔(dān)和代價(jià),同時(shí)也增強(qiáng)了系統(tǒng)的可維護(hù)性。?
2元數(shù)據(jù)管理系統(tǒng)的設(shè)計(jì)?
使用本系統(tǒng)的各部門(mén)實(shí)際情況不同,系統(tǒng)可能被部署到不同的平臺(tái)上,而且需要對(duì)該系統(tǒng)進(jìn)行一定的擴(kuò)展和改進(jìn)。所以在系統(tǒng)設(shè)計(jì)上,需要充分考慮到系統(tǒng)的可移植性和可擴(kuò)展性。?
2.1系統(tǒng)設(shè)計(jì)?
本系統(tǒng)基于J2EE平臺(tái),是一個(gè)瀏覽器/服務(wù)器(B/S)結(jié)構(gòu)的系統(tǒng),具有J2EE平臺(tái)可以跨系統(tǒng)使用的特性,采用MVC(Model-View-Controller)應(yīng)用框架。MVC設(shè)計(jì)框架的內(nèi)部原理比較復(fù)雜,將MVC運(yùn)用到應(yīng)用程序中會(huì)帶來(lái)大量的額外工作,增加應(yīng)用的復(fù)雜性。但是MVC可以輕松地實(shí)現(xiàn)程序代碼與HTML的分離,而且MVC的三個(gè)模塊相互獨(dú)立,可以構(gòu)造良好的松耦合構(gòu)件,提高應(yīng)用系統(tǒng)的可維護(hù)性、可擴(kuò)展性、可移植性和可復(fù)用性。從長(zhǎng)遠(yuǎn)的應(yīng)用考慮,應(yīng)使用MVC設(shè)計(jì)框架[9]。?
本系統(tǒng)在傳統(tǒng)的B/S三層結(jié)構(gòu)上作了一定的改進(jìn)。?
(1)表現(xiàn)層。在該層使用Struts框架。Struts是一個(gè)MVC模式的表現(xiàn)層應(yīng)用框架。瀏覽器向Web服務(wù)器提出請(qǐng)求后,Web服務(wù)器會(huì)把請(qǐng)求交給控制器處理。ActionServlet控制器根據(jù)請(qǐng)求的不同,將它們轉(zhuǎn)發(fā)給不同的Action實(shí)例。Action實(shí)例在這里充當(dāng)了用戶(hù)請(qǐng)求與業(yè)務(wù)處理邏輯之間的適配器,它只負(fù)責(zé)控制整個(gè)程序的流程,不關(guān)心具體業(yè)務(wù)的實(shí)現(xiàn),實(shí)現(xiàn)了請(qǐng)求與業(yè)務(wù)邏輯的分開(kāi)。本系統(tǒng)使用一個(gè)高效的Action類(lèi)——DispatchAction類(lèi)。只要繼承該類(lèi),就可以在一個(gè)Action中集成多個(gè)業(yè)務(wù)方法,有利于系統(tǒng)的維護(hù)。在視圖顯示方面,其大量使用了Struts標(biāo)簽,用來(lái)控制顯示的邏輯和內(nèi)容。由于不同平臺(tái)采取的編碼方式不同,在進(jìn)行系統(tǒng)移植時(shí)很容易出現(xiàn)中文亂碼問(wèn)題。在這里使用一個(gè)可插拔式的過(guò)濾器,實(shí)現(xiàn)對(duì)請(qǐng)求和響應(yīng)的預(yù)處理及后處理,很好地解決了字符編碼問(wèn)題,使系統(tǒng)可以在不同的平臺(tái)上進(jìn)行移植。
(2)業(yè)務(wù)層。它處理用戶(hù)請(qǐng)求和應(yīng)用邏輯。在處理之前,將所有涉及到表現(xiàn)層的數(shù)據(jù)結(jié)構(gòu)替換成更加通用的數(shù)據(jù)結(jié)構(gòu)類(lèi)型;使用通用的、與表現(xiàn)層無(wú)關(guān)的數(shù)據(jù)結(jié)構(gòu)在這兩層之間傳遞參數(shù)。表現(xiàn)層方法提交的參數(shù)類(lèi)型主要是HttpServletRequest和HttpServletResponse;使用這樣的參數(shù)會(huì)增加系統(tǒng)的耦合性,不利于代碼的重用,所以要將它們處理成通用的數(shù)據(jù)類(lèi)型,如數(shù)組。這一過(guò)程在Action適配器進(jìn)行轉(zhuǎn)發(fā)之前完成,提供給業(yè)務(wù)層的參數(shù)是通用的數(shù)據(jù)類(lèi)型[10]。業(yè)務(wù)層方法之間的通信也通過(guò)通用的參數(shù)類(lèi)型進(jìn)行,使得每個(gè)業(yè)務(wù)方法均獨(dú)立存在于系統(tǒng)之中,在很大程度上減少了系統(tǒng)的耦合,提高了可復(fù)用性。?
(3)數(shù)據(jù)層。為了實(shí)現(xiàn)數(shù)據(jù)庫(kù)訪問(wèn)細(xì)節(jié)與業(yè)務(wù)層的分離,引入持久化層。?
為了使系統(tǒng)具有較好的可維護(hù)性、可移植性和可復(fù)用性,采用以上的設(shè)計(jì)思想,以搭建一個(gè)邏輯清楚、功能明確、模塊化程度高的元數(shù)據(jù)管理系統(tǒng)。?
2.2工作流程?
用戶(hù)通過(guò)瀏覽器(IE/Netscape)向服務(wù)器提交請(qǐng)求,請(qǐng)求經(jīng)過(guò)過(guò)濾器處理后再提交給控制器ActionServlet;控制器根據(jù)請(qǐng)求的類(lèi)別將它們轉(zhuǎn)發(fā)給不同的DispatchAction類(lèi)。該類(lèi)中的方法對(duì)參數(shù)進(jìn)行處理后調(diào)用不同的業(yè)務(wù)邏輯對(duì)請(qǐng)求進(jìn)行分析處理,處理后得到的信息通過(guò)視圖顯示在用戶(hù)瀏覽器上。?
3基于J2EE的元數(shù)據(jù)管理系統(tǒng)的實(shí)現(xiàn)?
根據(jù)本文提出的設(shè)計(jì)思想,實(shí)現(xiàn)了一個(gè)元數(shù)據(jù)管理系統(tǒng)——基于J2EE的小城鎮(zhèn)元數(shù)據(jù)管理平臺(tái)。本實(shí)例以J2EE平臺(tái)為基礎(chǔ),Tomcat 5.0為服務(wù)器,可以使用Oracle 9i、SQL Server 2000、MySQL數(shù)據(jù)庫(kù),使用了ORM(Object-Relation Mapping)模式的持久化層中間件Hibernate,以Eclipse 3.0為開(kāi)發(fā)平臺(tái)。在系統(tǒng)實(shí)現(xiàn)過(guò)程中,使用了以J2EE平臺(tái)為基礎(chǔ)的各項(xiàng)技術(shù),遵循Java2標(biāo)準(zhǔn)平臺(tái)的編碼標(biāo)準(zhǔn),注重系統(tǒng)的可擴(kuò)展性和可維護(hù)性。系統(tǒng)的XML引擎采用了DOM(Document Object Model)和SAX(Simple API for XML)。DOM負(fù)責(zé)XML文檔的生成和修改;SAX對(duì)XML進(jìn)行解析。
小城鎮(zhèn)元數(shù)據(jù)管理平臺(tái)的功能主要分為管理與檢索兩部分,可以實(shí)現(xiàn)對(duì)矢量數(shù)據(jù)、柵格數(shù)據(jù)、文檔數(shù)據(jù)、原始試驗(yàn)數(shù)據(jù)、報(bào)表數(shù)據(jù)和模型數(shù)據(jù)的管理與檢索;用戶(hù)管理可以對(duì)用戶(hù)進(jìn)行權(quán)限設(shè)置;系統(tǒng)管理功能可以提供系統(tǒng)運(yùn)行的日志和幫助文件。?
4結(jié)束語(yǔ)?
基于J2EE的元數(shù)據(jù)管理平臺(tái),具有良好的跨平臺(tái)特性;解決了多源異構(gòu)數(shù)據(jù)的融合、遙感數(shù)據(jù)的存儲(chǔ)、數(shù)據(jù)持久化和用戶(hù)控制訪問(wèn)問(wèn)題;在設(shè)計(jì)和實(shí)現(xiàn)過(guò)程中遵循J2EE的設(shè)計(jì)模式,具有良好的擴(kuò)展性和維護(hù)性;功能模塊具有低耦合的特點(diǎn),極大地提高了代碼的可復(fù)用性;可對(duì)元數(shù)據(jù)進(jìn)行有效管理,實(shí)現(xiàn)信息的共享發(fā)布,廣泛地應(yīng)用在各個(gè)領(lǐng)域。在如何提高系統(tǒng)的安全性方面還有待于對(duì)其進(jìn)行進(jìn)一步的研究。?
參考文獻(xiàn):?
〔1〕吳洪橋,何建邦,池天河,等.基于Internet的元數(shù)據(jù)管理模式研究[J].計(jì)算機(jī)科學(xué),2003,30(4):89-91. [2]李廣乾 .小城鎮(zhèn)信息化建設(shè)的基本思路[J].信息化建設(shè),2005(Z1):24-26.?
[3]趙春江,楊信廷. 加強(qiáng)信息技術(shù)研究和開(kāi)發(fā)促進(jìn)小城鎮(zhèn)健康發(fā)展[J].小城鎮(zhèn)建設(shè),2005(1):22-23.?
[4]孫君明,郭紅. 基于XML的異構(gòu)信息交換技術(shù)研究[J].計(jì)算機(jī)應(yīng)用研究,2003,20(1):70-72.?
[5]李德冠,陳夢(mèng)東. 一種基于XML的數(shù)據(jù)交換系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[J].微機(jī)發(fā)展,2005,15(12):12-14.?
[6]朱雷,潘懋,李麗勤,等. GIS中海量柵格數(shù)據(jù)的處理技術(shù)研究[J].計(jì)算機(jī)應(yīng)用研究,2006,23(1):66-68.?
[7]孫衛(wèi)琴. 精通Hibernate:Java對(duì)象持久化技術(shù)詳解[M]. 北京:電子工業(yè)出版社,2005.?
[8]范會(huì)聯(lián),李獻(xiàn)禮. 基于Struts框架的Web信息系統(tǒng)中RBAC的實(shí)現(xiàn)[J].計(jì)算機(jī)時(shí)代,2005(12):33-34.?
[9]孫衛(wèi)琴. 基于MVC的Java Web設(shè)計(jì)與開(kāi)發(fā)[M]. 北京:電子工業(yè)出版社,2004.
這個(gè)要看你的項(xiàng)目是B/S結(jié)構(gòu)還是C/S結(jié)構(gòu),B/S結(jié)構(gòu)的話,界面要用JSP來(lái)寫(xiě),C/S結(jié)構(gòu)的話,可以用Java做出來(lái),Java Web不需要申請(qǐng)IP地址,在Eclipse里面建一個(gè)web工程,然后在自帶的tomcat下運(yùn)行一下就可以了。
6個(gè)人分成三組
第一個(gè)開(kāi)發(fā)圖書(shū)管理模塊,(添加,刪除,修改圖書(shū),圖書(shū)類(lèi)別 添加 刪除 修改)
第二個(gè)開(kāi)發(fā)圖書(shū)借閱和還書(shū)模塊
第三個(gè)開(kāi)發(fā)用戶(hù)管理模塊,包含,游客,注冊(cè)會(huì)員,和管理員(他們的權(quán)限)。
兩個(gè)人一小組,
一個(gè)開(kāi)發(fā)一個(gè)寫(xiě)文章,是不是很合理,呵呵。
我也做過(guò)這個(gè)系統(tǒng)和論文。VB做的那時(shí)候,.net java分法還多些。
《圖書(shū)管理信息系統(tǒng)畢業(yè)設(shè)計(jì)》論文目錄
摘 要
一、導(dǎo)言
(一)問(wèn)題的提出
(二)本文研究路線
二、管理信息系統(tǒng)研究概述
(一)管理信息系統(tǒng)的發(fā)展歷史
(二)管理信息系統(tǒng)的.特點(diǎn)
(三)管理信息系統(tǒng)的開(kāi)發(fā)方式
(四)管理信息系統(tǒng)的開(kāi)發(fā)過(guò)程
三、圖書(shū)管理系統(tǒng)分析與設(shè)計(jì)
(一)圖書(shū)管理系統(tǒng)的用戶(hù)需求簡(jiǎn)介
(二)圖書(shū)管理系統(tǒng)的要求
(三)圖書(shū)管理系統(tǒng)功能描述
(四)系統(tǒng)功能模塊圖
(五)系統(tǒng)開(kāi)發(fā)環(huán)境簡(jiǎn)介
(六)數(shù)據(jù)庫(kù)設(shè)計(jì)
1、數(shù)據(jù)庫(kù)介紹
2、使用ADO數(shù)據(jù)控件訪問(wèn)數(shù)據(jù)庫(kù)
3、數(shù)據(jù)庫(kù)需求分析
4、數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)
(七)數(shù)據(jù)詞典分析
1、讀者信息表
2、圖書(shū)信息表
3、借閱信息表
(八)數(shù)據(jù)流程圖
四、圖書(shū)管理系統(tǒng)的功能實(shí)現(xiàn)
(一)"登陸界面"編碼設(shè)計(jì)
(二)"讀者管理界面"編碼設(shè)計(jì)
(三)"圖書(shū)管理界面"編碼設(shè)計(jì)
(四)"借閱信息管理界面"編碼設(shè)計(jì)
(五)發(fā)布應(yīng)用程序
1、編譯應(yīng)用程序
2、打包應(yīng)用程序
3、發(fā)布應(yīng)用程序的步驟
五、結(jié)論與體會(huì)
參考文獻(xiàn)
附錄:源代碼
您好, 請(qǐng)問(wèn)還需要嗎? 我這里有部分asp.net的代碼
也有很多基于javaweb的圖書(shū)管理系統(tǒng)的代碼, servlet+JSP或者基于mvc框架的
(全國(guó)總部)河南省鄭州市金水區(qū)博雅廣場(chǎng)4號(hào)樓1104
+18937133779
zboao@qq.com
中博奧技術(shù)有限公司& 版權(quán)所有
工信部備案號(hào):豫ICP備11015869號(hào)-8