版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> (20 屆)</b></p><p><b> 建筑項(xiàng)目資金分析</b></p><p><b> 摘要</b></p><p> 本論文主要闡釋內(nèi)容為用友軟件股份有限
2、公司建筑研發(fā)部開發(fā)出的“V63建筑項(xiàng)目綜合管理”產(chǎn)品中“建筑項(xiàng)目資金分析”功能模塊。</p><p> 該模塊從開發(fā)到測(cè)試結(jié)束歷時(shí)2個(gè)月,主要目的是展現(xiàn)一個(gè)建筑項(xiàng)目從施工到結(jié)束整個(gè)過程中資金的分配,項(xiàng)目的進(jìn)度以及大概的盈虧情況,該模塊的實(shí)現(xiàn)方式,是用圖表的形式展現(xiàn)的,主要用到JFreeChart畫圖技術(shù),Swing畫圖技術(shù)。如果沒有充足的資金,建筑施工企業(yè)無法順利的完成施工生產(chǎn)任務(wù),更不用說什么企業(yè)發(fā)展和壯大,
3、因此在建筑施工企業(yè)加強(qiáng)資金的控制和管理勢(shì)在必行。</p><p> 關(guān)鍵字:建筑項(xiàng)目資金分析、JFreeChart畫圖、Swing畫圖。</p><p><b> Abstract</b></p><p> This thesis mainly explains the content of ufida co., LTD., constr
4、uction of research and development department to develop the V63 construction project integrated management "products in the" construction project funds analysis "function module.The module from developme
5、nt to test the end of the last 2 months, the main purpose is to show a building project from construction to finish the whole process of the allocation of funds, the project on schedule and about the profit and loss, the
6、 module i</p><p><b> 目錄</b></p><p><b> 1.引言1</b></p><p> 1.1背景和意義1</p><p> 1.1.1 背景1</p><p> 1.1.2 意義1</p><p>
7、; 1.2 國內(nèi)的現(xiàn)狀1</p><p> 1.3本文的重點(diǎn)1</p><p><b> 2.技術(shù)支持1</b></p><p> 2.1 開發(fā)背景簡介1</p><p> 2.1.1 NC簡介1</p><p> 2.1.2 建筑項(xiàng)目綜合管理簡介1</p>
8、<p> 2.2開發(fā)工具和環(huán)境1</p><p> 2.2.1開發(fā)環(huán)境1</p><p> 2.2.2開發(fā)軟件1</p><p> 2.2.3系統(tǒng)環(huán)境配置1</p><p> 2.2.4運(yùn)行環(huán)境1</p><p> 2.3 Spring技術(shù)1</p><p>
9、 2.3.1 spring介紹1</p><p> 2.3.2 Spring面向切面編程1</p><p> 2.3.3 Spring 中 AOP 的實(shí)現(xiàn)。1</p><p> 2.4 JFreeChart技術(shù)1</p><p> 2.5 Tomcat服務(wù)器1</p><p> 2.6 觀察者設(shè)計(jì)
10、模式1</p><p> 3.需求分析與概要設(shè)計(jì)1</p><p><b> 3.1需求分析1</b></p><p> 3.1.1 設(shè)計(jì)思想1</p><p> 3.1.2功能需求1</p><p> 3.1.3設(shè)計(jì)優(yōu)勢(shì)1</p><p><b
11、> 3.2概要設(shè)計(jì)1</b></p><p> 3.2.1 系統(tǒng)總體分析1</p><p> 3.2.2按模塊分總體設(shè)計(jì)1</p><p> 4.詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)1</p><p><b> 4.1設(shè)計(jì)說明1</b></p><p> 4.2數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)1&
12、lt;/p><p> 4.2.1數(shù)據(jù)庫的選擇1</p><p> 4.2.2數(shù)據(jù)結(jié)構(gòu)1</p><p> 4.3 系統(tǒng)詳細(xì)設(shè)計(jì)1</p><p> 4.3.1主要模塊UMl類圖1</p><p> 4.3.2JFreeChart畫圖技術(shù)1</p><p> 4.3.3 swin
13、g畫圖技術(shù)1</p><p> 4.4關(guān)鍵技術(shù)實(shí)現(xiàn)1</p><p> 4.4.1系統(tǒng)設(shè)計(jì)模式1</p><p> 4.4.2項(xiàng)目改變事件傳遞設(shè)計(jì)1</p><p> 4.4.3數(shù)據(jù)動(dòng)態(tài)增長處理1</p><p> 4.4.4重要的類及包1</p><p> 4.4.5開
14、發(fā)遇到的問題以及解決方法1</p><p><b> 5結(jié)論1</b></p><p><b> 5.1技術(shù)特點(diǎn)1</b></p><p> 5.2缺點(diǎn)及不足1</p><p><b> 5.4開發(fā)總結(jié)1</b></p><p><
15、;b> 致謝1</b></p><p><b> 參考文獻(xiàn)1</b></p><p><b> 1.引言</b></p><p> 本系統(tǒng)是面向建筑施工企業(yè),基于建筑項(xiàng)目的資金進(jìn)行分析。它基于java語言開發(fā),不但操作簡單,界面友好,易于操作,實(shí)用性強(qiáng);同時(shí)還能夠跨平臺(tái)運(yùn)行。</p>
16、;<p><b> 1.1背景和意義</b></p><p><b> 1.1.1 背景</b></p><p> 無論對(duì)于何種企業(yè)來說,資金管理都是極其重要的組成部分,對(duì)于施工企業(yè)來說,它是進(jìn)行施工的重要價(jià)值基礎(chǔ),是企業(yè)進(jìn)行生產(chǎn)經(jīng)營活動(dòng)的必要條件,被稱為企業(yè)經(jīng)營的“血液”。有效的資金控制和管理,可以提高經(jīng)營效益,降低施工成本
17、。因此,建筑施工企業(yè)應(yīng)當(dāng)提高企業(yè)市場(chǎng)競(jìng)爭力和營利能力,加強(qiáng)資金的控制和管理的能力,將資金作為企業(yè)經(jīng)營的重點(diǎn)進(jìn)行管理,促進(jìn)企業(yè)穩(wěn)健發(fā)展。</p><p><b> 1.1.2 意義</b></p><p> 資金是企業(yè)運(yùn)營和發(fā)展的“血液”,如果企業(yè)資金缺乏,會(huì)致使企業(yè)不能及時(shí)償還貸款、不能及時(shí)支付購買施工設(shè)備和材料的價(jià)款,從而降低了該企業(yè)的信譽(yù),帶來了許多有形或無形
18、的損失。強(qiáng)化建筑施工企業(yè)資金管理,可以有效地降低施工成本,提高企業(yè)的管理能力、市場(chǎng)競(jìng)爭力以及營利能力。 </p><p> ?。ㄒ唬┨岣呓ㄖ┕て髽I(yè)管理能力。在建筑施工企業(yè),財(cái)務(wù)管理是企業(yè)管理的核心內(nèi)容,而資金管理又是財(cái)務(wù)管理極其重要的組成部分,所以可以說,資金管理是建筑施工企業(yè)的核心內(nèi)容,加強(qiáng)資金控制和管理可以實(shí)現(xiàn)提高企業(yè)管理水平的目的。換一個(gè)角度來說,一個(gè)企業(yè)價(jià)值可以分為資金流和物質(zhì)流,加強(qiáng)資金流控制能夠提高
19、企業(yè)經(jīng)營管理能力,對(duì)企業(yè)整體經(jīng)營進(jìn)程進(jìn)行科學(xué)、有效地控制。 </p><p> ?。ǘ┙档推髽I(yè)財(cái)務(wù)風(fēng)險(xiǎn)。企業(yè)償還到期債務(wù)需要有充足的資金,如果企業(yè)不能償還到期債務(wù)會(huì)引起財(cái)務(wù)風(fēng)險(xiǎn)的產(chǎn)生,作為企業(yè)“血液”的資金出現(xiàn)“斷流”,會(huì)給企業(yè)帶來嚴(yán)重的影響,會(huì)遭受罰款、影響企業(yè)的信用。加強(qiáng)建筑施工企業(yè)的資金控制和管理,可以有效地降低企業(yè)財(cái)務(wù)風(fēng)險(xiǎn),增強(qiáng)企業(yè)現(xiàn)金流的穩(wěn)定性。 </p><p> ?。ㄈ┨?/p>
20、高企業(yè)盈利能力和市場(chǎng)競(jìng)爭力。資金是施工企業(yè)生產(chǎn)經(jīng)營的必要的、也是重要的價(jià)值基礎(chǔ)。合理分配資金可以提高企業(yè)價(jià)值,尤其是在目前市場(chǎng)經(jīng)濟(jì)環(huán)境下,建筑施工企業(yè)面臨激烈的市場(chǎng)競(jìng)爭,企業(yè)要想提高經(jīng)營獲利能力,只能從自身努力提高。然而,在施工企業(yè)中,資金管理可以有效地代表其自身的經(jīng)營管理能力,建筑施工企業(yè)對(duì)資金進(jìn)行有效的控制和管理可以有效降低企業(yè)運(yùn)營成本,減少企業(yè)資金浪費(fèi),從而提高企業(yè)的市場(chǎng)競(jìng)爭力,增強(qiáng)企業(yè)的獲利能力和水平。 </p>
21、<p><b> 1.2 國內(nèi)的現(xiàn)狀</b></p><p> 盡管我國ERP軟件行業(yè)的發(fā)展在技術(shù)、人才、應(yīng)用實(shí)施方面存在不少問題,但“十二五”是經(jīng)濟(jì)轉(zhuǎn)型的關(guān)鍵時(shí)期,我國經(jīng)濟(jì)增長模式將從外延式增長向內(nèi)生式增長轉(zhuǎn)變,精細(xì)化管理成為提升企業(yè)競(jìng)爭力的關(guān)鍵,而ERP在其中扮演著關(guān)鍵角色,這使得ERP市場(chǎng)發(fā)展前景廣闊,ERP行業(yè)將2倍于GDP增速的速度向前發(fā)展。</p>&
22、lt;p> 近年來,隨著企業(yè)對(duì)管理水平的日益重視,越來越多的企業(yè)將目光投向ERP軟件市場(chǎng),希望通過ERP系統(tǒng)的建設(shè)增強(qiáng)企業(yè)的綜合競(jìng)爭力,從而推動(dòng)了國內(nèi)ERP軟件市場(chǎng)穩(wěn)定增長。2010年,中國ERP軟件行業(yè)市場(chǎng)規(guī)模為69.56億元,占管理軟件整體市場(chǎng)規(guī)模比例超過50%。而隨著管理軟件的發(fā)展,ERP套件已成為市場(chǎng)的主流。盡管ERP軟件市場(chǎng)增長強(qiáng)勁,但我國ERP軟件支出占全部IT支出的比例仍大大低于發(fā)達(dá)國家。我國ERP軟件市場(chǎng)的發(fā)展空
23、間仍然廣闊。</p><p> 從ERP軟件行業(yè)細(xì)分領(lǐng)域市場(chǎng)發(fā)展?fàn)顩r來看,ERP軟件的目標(biāo)市場(chǎng)主要集中于大中型企業(yè),但隨著小型企業(yè)精細(xì)化管理需求的發(fā)展,小型企業(yè)ERP軟件市場(chǎng)也在不斷發(fā)展。從ERP軟件應(yīng)用的行業(yè)來看,制造業(yè)、流通業(yè)以及能源行業(yè)是ERP軟件市場(chǎng)銷售額主要集中領(lǐng)域。</p><p> 從ERP軟件行業(yè)市場(chǎng)競(jìng)爭來看,在市場(chǎng)需求的拉動(dòng)與產(chǎn)業(yè)政策的保護(hù)雙重作用下,國外知名ERP軟
24、件廠商抓住有利條件搶占中國ERP軟件市場(chǎng),并已經(jīng)在中國ERP軟件市場(chǎng)占據(jù)一定地位;國內(nèi)ERP軟件廠商則在整體實(shí)力上進(jìn)一步壯大,并且已經(jīng)在某些市場(chǎng)和以SAP、Oracle等為代表的國際廠商展開了針鋒相對(duì)的競(jìng)爭。在ERP軟件市場(chǎng)競(jìng)爭過程中,ERP軟件營銷模式也得到進(jìn)一步發(fā)展,各廠商紛紛推出自己的體驗(yàn)式營銷策略或整合營銷策略,以便更有力的進(jìn)行品牌推廣。ERP軟件行業(yè)整體向前發(fā)展,行業(yè)內(nèi)的企業(yè)在競(jìng)爭之中得到更好的提升和發(fā)展。</p>
25、<p><b> 1.3本文的重點(diǎn)</b></p><p> 本文重點(diǎn)敘述如何使用圖表的形式對(duì)項(xiàng)目中的資金進(jìn)行分析,以及繪制圖表所使用的技術(shù)。</p><p><b> 2.技術(shù)支持</b></p><p> 2.1 開發(fā)背景簡介</p><p> 2.1.1 NC簡介<
26、;/p><p> “建筑項(xiàng)目綜合管理”是基于用友軟件股份有限公司下NC平臺(tái)開發(fā)的產(chǎn)品。</p><p><b> NC簡介:</b></p><p> 穩(wěn)定開放的底層技術(shù)平臺(tái)</p><p> J2EE架構(gòu),跨數(shù)據(jù)庫,跨操作系統(tǒng),豐富的底層技術(shù)支持</p><p> 基于多流程的企業(yè)應(yīng)用運(yùn)行
27、平臺(tái)</p><p> 業(yè)務(wù)流程,審批流程,會(huì)計(jì)平臺(tái),權(quán)限模型等</p><p> 基于模式化的開發(fā)平臺(tái)</p><p> 表單、報(bào)表、打印、查詢功能的模式化 </p><p><b> 開放的系統(tǒng)集成平臺(tái)</b></p><p> 信息集成平臺(tái)、Portal和基于SOA的交換架構(gòu)<
28、;/p><p><b> 統(tǒng)一的系統(tǒng)管理平臺(tái)</b></p><p><b> 系統(tǒng)監(jiān)控,統(tǒng)一配置</b></p><p><b> NC數(shù)據(jù)交互模型</b></p><p> 圖2-1展示了NC平臺(tái)下的數(shù)據(jù)交互模型,前臺(tái)UI與后臺(tái)通過VO傳輸數(shù)據(jù),通過遠(yuǎn)程組件調(diào)用。<
29、;/p><p> 圖2-1 NC數(shù)據(jù)交互圖</p><p> 2.1.2 建筑項(xiàng)目綜合管理簡介</p><p> “建筑項(xiàng)目綜合管理”是基于NC平臺(tái)下的一套完整的erp軟件,主要客戶為建筑施工企業(yè)。而本文所要敘述的“建筑項(xiàng)目資金分析”是“建筑項(xiàng)目綜合管理”下的一個(gè)功能模塊。</p><p> 2.2開發(fā)工具和環(huán)境</p>&
30、lt;p><b> 2.2.1開發(fā)環(huán)境</b></p><p> 主機(jī)操作系統(tǒng): WINDOWS7、windowsXP</p><p><b> 2.2.2開發(fā)軟件</b></p><p> JDK1.6級(jí)以上版本 </p><p> 集成開發(fā)環(huán)境:eclipse </p>
31、;<p> 數(shù)據(jù)庫:SQL SEVVER 2012.</p><p> 2.2.3系統(tǒng)環(huán)境配置</p><p> 使用進(jìn)java環(huán)境下開發(fā)程序,必須在電腦中安裝jdk和tomcat,并配置系統(tǒng)環(huán)境變量,一邊程序正常運(yùn)行。</p><p> 系統(tǒng)所處環(huán)境變量設(shè)置如下:</p><p> Set java_home
32、c:\ JDK 1.6.0</p><p> Set Catalina_home D:\ Apache-tomcat-6.0.18</p><p> Set CLASSPATH %java_home%\lib;%java_home%\lib\tools.jar;C:\Program Files (x86)\</p><p> Set sql path
33、Microsoft SQL Server\jdbc driver\sqljdbc_3.0\chs\sqljdbc.jar</p><p> .;%java_home%lib\tool.jar;%java_home%\lib\dt.jar;%catalina_home%\lib\jsp-api.jar;%catalina_home%lib\servlet-api.jar;</p><p>
34、<b> 2.2.4運(yùn)行環(huán)境</b></p><p> 裝有用友NC系統(tǒng)的windows系統(tǒng)。</p><p> 2.3 Spring技術(shù)</p><p> 2.3.1 spring介紹</p><p> Spring是一個(gè)開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Sp
35、ring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。</p><p> Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。</p><p> 輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring
36、框架可以在一個(gè)大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應(yīng)用中的對(duì)象不依賴于Spring的特定類。</p><p> 控制反轉(zhuǎn)——Spring通過一種稱作控制反轉(zhuǎn)(IoC)的技術(shù)促進(jìn)了松耦合。當(dāng)應(yīng)用了IoC,一個(gè)對(duì)象依賴的其它對(duì)象會(huì)通過被動(dòng)的方式傳遞進(jìn)來,而不是這個(gè)對(duì)象自己創(chuàng)建或者查找依賴對(duì)象。你可以認(rèn)為IoC與JNDI
37、相反——不是對(duì)象從容器中查找依賴,而是容器在對(duì)象初始化時(shí)不等對(duì)象請(qǐng)求就主動(dòng)將依賴傳遞給它。</p><p> 面向切面——Spring提供了面向切面編程的豐富支持,允許通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)(例如審計(jì)(auditing)和事務(wù)(transaction)管理)進(jìn)行內(nèi)聚性的開發(fā)。應(yīng)用對(duì)象只實(shí)現(xiàn)它們應(yīng)該做的——完成業(yè)務(wù)邏輯——僅此而已。它們并不負(fù)責(zé)(甚至是意識(shí))其它的系統(tǒng)級(jí)關(guān)注點(diǎn),例如日志或事務(wù)支持。&l
38、t;/p><p> 容器——Spring包含并管理應(yīng)用對(duì)象的配置和生命周期,在這個(gè)意義上它是一種容器,你可以配置你的每個(gè)bean如何被創(chuàng)建——基于一個(gè)可配置原型(prototype),你的bean可以創(chuàng)建一個(gè)單獨(dú)的實(shí)例或者每次需要時(shí)都生成一個(gè)新的實(shí)例——以及它們是如何相互關(guān)聯(lián)的。然而,Spring不應(yīng)該被混同于傳統(tǒng)的重量級(jí)的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用。</p><p>
39、框架——Spring可以將簡單的組件配置、組合成為復(fù)雜的應(yīng)用。在Spring中,應(yīng)用對(duì)象被聲明式地組合,典型地是在一個(gè)XML文件里。Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等等),將應(yīng)用邏輯的開發(fā)留給了你。</p><p> 所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測(cè)試的代碼。它們也為Spring中的各種模塊提供了基礎(chǔ)支持。</p><p>
40、 2.3.2 Spring面向切面編程</p><p> Spring 中 AOP 代理由 Spring 的 IoC 容器負(fù)責(zé)生成、管理,其依賴關(guān)系也由 IoC 容器負(fù)責(zé)管理。因此,AOP 代理可以直接使用容器中的其他 Bean 實(shí)例作為目標(biāo),這種關(guān)系可由 IoC 容器的依賴注入提供。Spring 默認(rèn)使用 Java 動(dòng)態(tài)代理來創(chuàng)建 AOP 代理, 這樣就可以為任何接口實(shí)例創(chuàng)建代理了。當(dāng)需要代理的類不是代理接
41、口的時(shí)候, Spring 自動(dòng)會(huì)切換為使用 CGLIB 代理,也可強(qiáng)制使用 CGLIB。 </p><p> AOP 編程其實(shí)是很簡單的事情??v觀 AOP 編程, 其中需要程序員參與的只有三個(gè)部分:</p><p><b> 定義普通業(yè)務(wù)組件。</b></p><p> 定義切入點(diǎn),一個(gè)切入點(diǎn)可能橫切多個(gè)業(yè)務(wù)組件。&l
42、t;/p><p> 定義增強(qiáng)處理,增強(qiáng)處理就是在 AOP 框架為普通業(yè)務(wù)組件織入的處理動(dòng)作。</p><p> 所以進(jìn)行 AOP 編程的關(guān)鍵就是定義切入點(diǎn)和定義增強(qiáng)處理。一旦定義了合適的切入點(diǎn)和增強(qiáng)處理,AOP 框架將會(huì)自動(dòng)生成 AOP 代理,即:代理對(duì)象的方法 = 增強(qiáng)處理 + 被代理對(duì)象的方法。</p><p> 2.3.3 Spring 中 AOP 的實(shí)現(xiàn)。
43、</p><p> Spring 有如下兩種選擇來定義切入點(diǎn)和增強(qiáng)處理。</p><p> 基于 Annotation 的“零配置”方式:使用@Aspect、@Pointcut等 Annotation 來標(biāo)注切入點(diǎn)和增強(qiáng)處理。</p><p> 基于 XML 配置文件的管理方式:使用 Spring 配置文件來定義切入點(diǎn)和增強(qiáng)點(diǎn)。</p><
44、p> 本系統(tǒng)是基于XML配置文件的管理方式實(shí)現(xiàn)的。</p><p> 2.4 JFreeChart技術(shù)</p><p> JFreeChart是JAVA平臺(tái)上的一個(gè)開放的圖表繪制類庫。它完全使用JAVA語言編寫,是為applications, applets, servlets 以及JSP等使用所設(shè)計(jì)。JFreeChart可生成餅圖(pie charts)、柱狀圖(bar ch
45、arts)、散點(diǎn)圖(scatter plots)、時(shí)序圖(time series)、甘特圖(Gantt charts)等等多種圖表,并且可以產(chǎn)生PNG和JPEG格式的輸出,還可以與PDF和EXCEL關(guān)聯(lián)。</p><p> 2.5 Tomcat服務(wù)器</p><p> Tomcat服務(wù)器傳送(serves)頁面使瀏覽器可以瀏覽,然而應(yīng)用程序服務(wù)器提供的是客戶端應(yīng)用程序可以調(diào)用(call
46、)的方法(methods)。確切一點(diǎn),你可以說:Web服務(wù)器專門處理HTTP請(qǐng)求(request),但是應(yīng)用程序服務(wù)器是通過很多協(xié)議來為應(yīng)用程序提供(serves)商業(yè)邏輯(business logic)。</p><p> Tomcat服務(wù)器可以解析(handles)HTTP協(xié)議。當(dāng)Web服務(wù)器接收到一個(gè)HTTP請(qǐng)求(request),會(huì)返回一個(gè)HTTP響應(yīng)(response),例如送回一個(gè)HTML頁面。為了
47、處理一個(gè)請(qǐng)求(request),Web服務(wù)器可以響應(yīng)(response)一個(gè)靜態(tài)頁面或圖片,進(jìn)行頁面跳轉(zhuǎn)(redirect),或者把動(dòng)態(tài)響應(yīng)(dynamic response)的產(chǎn)生委托(delegate)給一些其它的程序例如CGI腳本,JSP(JavaServer Pages)腳本,servlets,ASP(Active Server Pages)腳本,服務(wù)器端(server-side)JavaScript,或者一些其它的服務(wù)器端(s
48、erver-side)技術(shù)。無論它們(譯者注:腳本)的目的如何,這些服務(wù)器端(server-side)的程序通常產(chǎn)生一個(gè)HTML的響應(yīng)(response)來讓瀏覽器可以瀏覽。 </p><p> Web服務(wù)器的代理模型(delegation model)非常簡單。當(dāng)一個(gè)請(qǐng)求(request)被送到Web服務(wù)器里來時(shí),它只單純的把請(qǐng)求(request)傳遞給可以很好的處理請(qǐng)求(request)的程序(譯者注:服務(wù)
49、器端腳本)。Web服務(wù)器僅僅提供一個(gè)可以執(zhí)行服務(wù)器端(server-side)程序和返回(程序所產(chǎn)生的)響應(yīng)(response)的環(huán)境,而不會(huì)超出職能范圍。服務(wù)器端(server-side)程序通常具有事務(wù)處理(transaction processing),數(shù)據(jù)庫連接(database connectivity)和消息(messaging)等功能。</p><p> 2.6 觀察者設(shè)計(jì)模式</p>
50、<p> 觀察者模式有很多實(shí)現(xiàn)方式,從根本上說,該模式必須包含兩個(gè)角色:觀察者和被觀察對(duì)象。在剛才的例子中,業(yè)務(wù)數(shù)據(jù)是被觀察對(duì)象,用戶界面是觀察者。觀察者和被觀察者之間存在“觀察”的邏輯關(guān)聯(lián),當(dāng)被觀察者發(fā)生改變的時(shí)候,觀察者就會(huì)觀察到這樣的變化,并且做出相應(yīng)的響應(yīng)。如果在用戶界面、業(yè)務(wù)數(shù)據(jù)之間使用這樣的觀察過程,可以確保界面和數(shù)據(jù)之間劃清界限,假定應(yīng)用程序的需求發(fā)生變化,需要修改界面的表現(xiàn),只需要重新構(gòu)建一個(gè)用戶界面,業(yè)
51、務(wù)數(shù)據(jù)不需要發(fā)生變化。觀察者模式主要類圖如圖2-2所示。</p><p> 圖2-2 觀察者模式</p><p> 3.需求分析與概要設(shè)計(jì)</p><p><b> 3.1需求分析</b></p><p> 3.1.1 設(shè)計(jì)思想</p><p> 用戶選擇一個(gè)建筑項(xiàng)目,以不同形式的圖表展
52、現(xiàn)出這個(gè)項(xiàng)目的資金動(dòng)向及分布,包括成本分析盤點(diǎn)、贏得值分析、項(xiàng)目金額、產(chǎn)值情況、費(fèi)用明細(xì)等內(nèi)容。</p><p><b> 3.1.2功能需求</b></p><p><b> 功能劃分:</b></p><p><b> 用戶選擇項(xiàng)目。</b></p><p> 根據(jù)
53、選擇的項(xiàng)目在數(shù)據(jù)庫中查找相應(yīng)的數(shù)據(jù)。</p><p> 將數(shù)據(jù)以圖表形式展現(xiàn)在界面上。</p><p><b> 3.1.3設(shè)計(jì)優(yōu)勢(shì)</b></p><p> 使用圖表的形式展現(xiàn)數(shù)據(jù)具有更加直觀、可對(duì)比性強(qiáng),等優(yōu)勢(shì)。</p><p><b> 3.2概要設(shè)計(jì)</b></p>&
54、lt;p> 3.2.1 系統(tǒng)總體分析</p><p> 總體分析如圖3-1:</p><p> 3.2.2按模塊分總體設(shè)計(jì)</p><p> 本系統(tǒng)按模塊主要分為項(xiàng)目參照、圖表展現(xiàn)兩部分,圖表展現(xiàn)又分為,項(xiàng)目金額、產(chǎn)值分析、項(xiàng)目資金明細(xì)等部分,如圖3-2所示</p><p> 圖3-2 總體設(shè)計(jì)圖</p><
55、;p><b> 4.詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)</b></p><p><b> 4.1設(shè)計(jì)說明</b></p><p> 本模塊功能操作比較簡易,利用觀察者設(shè)計(jì)模式將用戶選擇的項(xiàng)目派發(fā)到各個(gè)圖表中,模塊間的數(shù)據(jù)封裝在model中,通過model傳輸數(shù)據(jù)而圖表的實(shí)現(xiàn)使用了jfreechart技術(shù)和swing畫圖技術(shù),最后利用多線程技術(shù)將數(shù)據(jù)動(dòng)態(tài)的
56、填充圖表。</p><p><b> 4.2數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)</b></p><p> 由于數(shù)據(jù)庫內(nèi)部結(jié)構(gòu)復(fù)雜并且關(guān)系緊密,因此設(shè)計(jì)一個(gè)合理的數(shù)據(jù)結(jié)構(gòu),用來存儲(chǔ)數(shù)據(jù)庫內(nèi)部表與表、字段與表、字段與字段之間的關(guān)系和信息是很有必要的。</p><p> 4.2.1數(shù)據(jù)庫的選擇</p><p> 在開發(fā)這個(gè)系統(tǒng)上,通用性是我
57、們考慮的一個(gè)重要因素,因?yàn)橹饕糜诜?wù),所以選擇sql數(shù)據(jù)庫。在匹配上比較適合系統(tǒng)。</p><p><b> 4.2.2數(shù)據(jù)結(jié)構(gòu)</b></p><p> 根據(jù)系統(tǒng)面對(duì)用戶,數(shù)據(jù)庫設(shè)計(jì)以下結(jié)構(gòu):</p><p> 數(shù)據(jù)庫信息結(jié)構(gòu):數(shù)據(jù)庫名稱(ProjectAnalysis)</p><p> 4.3 系統(tǒng)詳細(xì)設(shè)
58、計(jì)</p><p> 4.3.1主要模塊UMl類圖</p><p> 本系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)中重要類和接口的關(guān)系如圖4-1所示。</p><p><b> 圖4-1UML類圖</b></p><p> 4.3.2JFreeChart畫圖技術(shù)</p><p> 本系統(tǒng)中3D柱狀圖是使用JFreeC
59、hart畫圖技術(shù)繪制其效果如圖4-2所示</p><p> 圖4-2 3D柱狀圖</p><p><b> 重要的類和接口</b></p><p> org.jfree.data.general.Dataset 所有數(shù)據(jù)源類都要實(shí)現(xiàn)的接口。org.jfree.chart.ChartFactory 由它來產(chǎn)生 JFreeChart 對(duì)象。
60、org.jfree.chart.JFreeChart 所有對(duì)圖形的調(diào)整都是通過它。org.jfree.chart.plot.Plot 通過JFreeChart 對(duì)象獲得它,然后再通過它對(duì)圖形外部部分(例:坐標(biāo)軸)調(diào)整。org.jfree.chart.renderer.AbstractRenderer 通過JFreeChart 對(duì)象獲得它,然后再通過它對(duì)圖形內(nèi)部部分。(例:柱狀圖的類型)調(diào)整。</p><p&g
61、t;<b> 畫圖流程</b></p><p> 創(chuàng)建一個(gè)數(shù)據(jù)源(dataset)</p><p> 初始化一個(gè)JFreeChart并將dataset傳進(jìn)去。</p><p> chart = ChartFactory.createBarChart3D(this.getModel().getTitle(), this.getModel(
62、).getCategoryAxisLabel(), this.getModel().getValueAxisLabel(), this.getModel().getDataset(), PlotOrientation.VERTICAL, true,true, true);</p><p> 獲取并初始化Plot</p><p> CategoryPlot plot = (Catego
63、ryPlot) chart.getPlot();</p><p><b> 4.初始化坐標(biāo)軸</b></p><p> initAxis((NumberAxis)plot.getRangeAxis(), plot.getDomainAxis());</p><p> 總結(jié):JFreeChart的圖表展現(xiàn)在一個(gè)ChartPanel中,數(shù)據(jù)封
64、裝在DataSet中,為了適配整個(gè)系統(tǒng)的數(shù)據(jù)傳輸方式,將DataSet封裝到一個(gè)自定義的Model中,這樣的好處使得整個(gè)程序界面的展現(xiàn)和數(shù)據(jù)分離開來,充分發(fā)揮MVC開發(fā)模式的優(yōu)勢(shì)。</p><p> 4.3.3 swing畫圖技術(shù)</p><p> 本節(jié)重點(diǎn)介紹分析用儀表圖實(shí)現(xiàn)過程,效果圖如圖4-3所示:</p><p><b> 圖4-3分析儀表圖
65、</b></p><p> 圖4-3分為四部門組成,首先畫儀表盤外邊框如下代碼所示:</p><p><b> // 畫儀表盤外框</b></p><p> drawOutBoard(g2, x, y, width, height);</p><p> 其次對(duì)外邊框做模糊處理,并設(shè)置抗鋸齒效果。<
66、;/p><p><b> //模糊處理</b></p><p> GradientPaint gPaint = new GradientPaint(p1, COLOR_OUT_BOARD_UP, p2, COLOR_OUT_BOARD_DOWN, true); </p><p> g2.setPaint(gPaint);</p>
67、<p> g2.fill(outBoard);</p><p><b> //反鋸齒</b></p><p> g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);</p><p> // 畫儀表盤刻度
68、圈</p><p> x += OUTTODIAL_SIZE;</p><p> y += OUTTODIAL_SIZE;</p><p> width -= 2 * OUTTODIAL_SIZE;</p><p> height-= 2 * OUTTODIAL_SIZE;</p><p> drawDial
69、(g2, x, y, width, height);</p><p> // 畫儀表盤內(nèi)表盤</p><p> x += DIAL_SIZE;</p><p> y += DIAL_SIZE;</p><p> width -= 2 * DIAL_SIZE;</p><p> height-= 2 * DIA
70、L_SIZE;</p><p> drawInBoard(g2, x, y, width, height);</p><p> // 畫儀表盤中心裝飾</p><p> drawDecoration(g2, centerX, centerY);</p><p><b> // 畫儀表盤指針</b></p&g
71、t;<p> drawPointer(g2, centerX, centerY, width / 2);</p><p><b> 4.4關(guān)鍵技術(shù)實(shí)現(xiàn)</b></p><p> 4.4.1系統(tǒng)設(shè)計(jì)模式</p><p> 本系統(tǒng)的圖表都是獨(dú)立的組件,通過Spring框架注冊(cè)在AnalysisComponent.xml中,系統(tǒng)
72、初始化時(shí)會(huì)首先解析這個(gè)文件。如下這段代碼定義了各個(gè)組件:</p><p> <bean id="incomeAnalysis" class="nc.ui.jzpm.projbusi.income.IncomeAnalysis" ></p><p> <constructor-arg value="900" /
73、></p><p> <constructor-arg value="400" /></p><p><b> </bean></b></p><p> <bean id="barChartModel" class="nc.ui.jzpm.projbus
74、i.barchart.model.BarChartModel"></p><p> <property name="title" value="產(chǎn)值金額" /></p><p> <property name="categoryAxisLabel" value="月份" /
75、></p><p> <property name="valueAxisLabel" value="金額" /></p><p><b> </bean></b></p><p> <bean id="costAnalysis" class=&
76、quot;nc.ui.jzpm.projbusi.costanalysis.JZCostAnalysis" ></p><p> <constructor-arg value="900" /></p><p> <constructor-arg value="400" /></p><p
77、><b> </bean></b></p><p> <bean id="projCtrlAnalysis" class="nc.ui.jzpm.projbusi.dashboard.JZProjCtrlAnalysis" ></p><p> <constructor-arg valu
78、e="900" /></p><p> <constructor-arg value="450" /></p><p><b> </bean></b></p><p> <bean id="projStatusBar" class="
79、;nc.ui.jzpm.projbusi.milestonebar.JZProjStatusBar" ></p><p> <constructor-arg value="900" /></p><p> <constructor-arg value="150" /></p><p>
80、;<b> </bean></b></p><p> <bean id="stackBarChartModel" class="nc.ui.jzpm.projbusi.stackbarchart.model.StackBarChartModel"></p><p> <property nam
81、e="title" value="項(xiàng)目金額" /></p><p> <property name="categoryAxisLabel" value="類別" /></p><p> <property name="valueAxisLabel" value=&
82、quot;金額" /></p><p><b> </bean></b></p><p> <bean id="barChart" class="nc.ui.jzpm.projbusi.barchart.BarChartDemo2" ></p><p> &l
83、t;property name="model" ref="barChartModel" /></p><p><b> </bean></b></p><p> <bean id="StackedBarChart" class="nc.ui.jzpm.projbusi.s
84、tackbarchart.StackedBarChart" ></p><p> <property name="barColor"></p><p><b> <list></b></p><p> <value>0xff4500</value><
85、/p><p> <value>0xb8860b</value></p><p><b> </list></b></p><p> </property></p><p> <property name="model" ref="st
86、ackBarChartModel" /></p><p> <property name="conColor" ref="barColor" /></p><p><b> </bean></b></p><p> 在系統(tǒng)初始化時(shí),AnalysisConten
87、tPanel中會(huì)解析AnalysisComponent.xml文件從中獲得圖表組價(jià)的實(shí)例對(duì)象。這樣有效解決了各個(gè)組價(jià)之間的耦合問題,下面一段代碼為AnalysisContentPanel解析配置文件并獲得實(shí)例對(duì)象的過程。</p><p> @SuppressWarnings("unchecked")</p><p> private void initCompone
88、ntList() {</p><p> UIF2BeanFactory factory = new UIF2BeanFactory();</p><p> factory.loadBeanConfig("nc/ui/jzpm/projbusi/component/analysis/AnalysisComponent.xml");</p><p&g
89、t; componentList = (List<IAnalysisCompenont>) factory.getBean("componentList");</p><p><b> }</b></p><p> 4.4.2項(xiàng)目改變事件傳遞設(shè)計(jì)</p><p> 項(xiàng)目改變事件主要是由左邊項(xiàng)目參照組件、解
90、耦組件、圖表組件組成。圖表組件實(shí)現(xiàn)了ProjectChangedLisenter,解耦組件初始化時(shí)會(huì)同時(shí)初始化右邊參照組件和圖表組件,實(shí)現(xiàn)圖表組件對(duì)項(xiàng)目參照組件的監(jiān)聽</p><p> //初始化右邊圖表組件</p><p> private AnalysisContentPanel contentPanel = new AnalysisContentPanel();</p>
91、;<p> //初始化左邊項(xiàng)目參照組件</p><p> private ProjectOverviewPanel overviewPanel = new ProjectOverviewPanel();</p><p> //右邊Panel監(jiān)聽左邊panel</p><p> overviewPanel.addProjectChangeList
92、ener(contentPanel);</p><p> 當(dāng)項(xiàng)目發(fā)生改變時(shí)項(xiàng)目參照組件會(huì)創(chuàng)建一個(gè)事件源,并將此事件分發(fā)出去。</p><p> public void valueChanged(ValueChangedEvent event) {</p><p> fireProjectChangeEvent(((UIRefPane)event.getSour
93、ce()).getRefPK());</p><p><b> }</b></p><p><b> //事件派發(fā)</b></p><p> private void fireProjectChangeEvent(String pk_project) {</p><p> Object[]
94、listeners = listenerList.getListenerList();</p><p> for (Object listener : listeners) {</p><p> if(listener instanceof ProjectChangeListener) {</p><p> ((ProjectChangeListener)li
95、stener).valueChange(new ProjectChangeEvent(pk_project, this));</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> 4.4.3數(shù)
96、據(jù)動(dòng)態(tài)增長處理</p><p> 本模塊中,圖表中的數(shù)據(jù)動(dòng)態(tài)增長的處理方式是通過多線程的方式處理的。項(xiàng)目改變的事件觸發(fā)后會(huì)將對(duì)應(yīng)的數(shù)據(jù)傳入到各個(gè)表的model中然后重新初始化數(shù)據(jù)。</p><p> public void run() {</p><p><b> try {</b></p><p> Threa
97、d.sleep(100);</p><p> } catch (InterruptedException e) {</p><p> e.printStackTrace();</p><p><b> return;</b></p><p><b> }</b></p><
98、;p> List<Double> jihua = new ArrayList<Double>();</p><p> List<Double> shiji = new ArrayList<Double>();</p><p> for (int i = 0; i < model.getMonths(); i++) {<
99、/p><p> jihua.add(model.getPlanMny().get(i) / 20);</p><p> shiji.add(model.getRealMny().get(i) / 20);</p><p><b> }</b></p><p> for (int j = 0; j < 20; j
100、++) {</p><p><b> try {</b></p><p> Thread.sleep(120);</p><p> } catch (InterruptedException e) {</p><p> e.printStackTrace();</p><p><b&
101、gt; return;</b></p><p><b> }</b></p><p> this.getModel().updateData(jihua, shiji);</p><p> for (int i = 0; i < model.getMonths(); i++) {</p><p>
102、; double m = jihua.get(i);</p><p> jihua.remove(i);</p><p> jihua.add(i, m + model.getPlanMny().get(i) / 20);</p><p> double n = shiji.get(i);</p><p> shiji.remove
103、(i);</p><p> shiji.add(i, n + model.getRealMny().get(i) / 20);</p><p><b> }</b></p><p><b> }</b></p><p> this.getModel().updateData(model.ge
104、tPlanMny(), model.getRealMny());</p><p><b> }</b></p><p> 數(shù)據(jù)每增加20%停頓一秒,由此實(shí)現(xiàn)動(dòng)態(tài)增長的效果。</p><p> 4.4.4重要的類及包</p><p> nc.ui.jzpm.projbusi.barchart</p>
105、<p> BarChartDemo2 使用JFreeChart生成產(chǎn)值情況的圖表。</p><p> nc.ui.jzpm.projbusi.dashboard</p><p> DashBoardBar 使用swing畫圖,生成儀表盤的圖表。</p><p> nc.ui.jzpm.projbusi.component.overview<
106、/p><p> ProjectOverviewPanel 存放左邊項(xiàng)目參照的組件。</p><p> nc.ui.jzpm.projbusi.component.analysis</p><p> AnalysisContentPanel 存放右邊功能組件。</p><p> nc.ui.jzpm.projbusi</p>
107、<p> JProjectBusinessAnalysis 解耦組件左邊和右邊組件傳遞數(shù)據(jù)的橋梁。</p><p> nc.ui.jzpm.projbusi.panel</p><p> JzProjBusiAnalysisToftPanel 程序的入口。</p><p> 4.4.5開發(fā)遇到的問題以及解決方法</p><p&
108、gt;<b> 問題1:</b></p><p> 是用swing畫圖時(shí)如果不是直線會(huì)產(chǎn)生鋸齒的效果。</p><p><b> 解決方法:</b></p><p> 通過設(shè)置g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VA
109、LUE_ANTIALIAS_ON);</p><p> 這條語句設(shè)置抗鋸齒效果。</p><p><b> 問題2:</b></p><p> 在界面顯示時(shí),偶爾會(huì)出現(xiàn)中文亂碼現(xiàn)象。</p><p><b> 解決方法:</b></p><p> 這往往是組件間編碼
110、差異造成,通過設(shè)置各個(gè)組件的編碼方式,對(duì)所有組件,進(jìn)行統(tǒng)一編碼設(shè)置,異常消除。</p><p><b> 問題3:</b></p><p> 是用swing畫圖如何使圖像的效果更趨向于3D。</p><p><b> 解決方法:</b></p><p> 在畫分析儀表盤外層邊框時(shí),是用兩種不
111、同的顏色漸變?nèi)缓笤偌由夏:幚怼?lt;/p><p><b> 5結(jié)論</b></p><p><b> 5.1技術(shù)特點(diǎn)</b></p><p> 本系統(tǒng)界面統(tǒng)一友好,操作簡單,實(shí)用性強(qiáng),安全;代碼結(jié)構(gòu)清晰,易讀懂;安裝方便,可移植性和擴(kuò)展性好。</p><p><b> 5.2缺點(diǎn)及
112、不足</b></p><p> 由于系統(tǒng)規(guī)模較大,時(shí)間不足,需求沒有特別明確等原因,導(dǎo)致某些功能模塊沒有完整實(shí)現(xiàn),有些異常錯(cuò)誤沒有及時(shí)發(fā)現(xiàn)。</p><p><b> 5.4開發(fā)總結(jié)</b></p><p> 本系統(tǒng)模塊基本達(dá)到預(yù)期的各項(xiàng)技術(shù)指標(biāo),實(shí)現(xiàn)了預(yù)期的各種功能。從整體上來講,本系統(tǒng)模塊還比較令人滿意。本系統(tǒng)的關(guān)鍵任務(wù)主
113、要體現(xiàn)在以下兩個(gè)方面:(1) 系統(tǒng)架構(gòu)的設(shè)計(jì),包括各個(gè)組件的實(shí)現(xiàn)方式,功能組件和解耦組件的實(shí)現(xiàn)。以及通過觀察者開發(fā)模式實(shí)現(xiàn)對(duì)項(xiàng)目改變事件觸發(fā)時(shí)各個(gè)功能組件做出相應(yīng)的處理。 (2)畫圖技術(shù)的實(shí)現(xiàn)主要分為JFreeChart畫圖技術(shù)和swing畫圖技術(shù),在本文詳細(xì)設(shè)計(jì)中對(duì)這兩部分都有介紹。</p><p> 當(dāng)然,由于時(shí)間、技術(shù)、需求等各方面原因本系統(tǒng)還存在一些不盡人意之處和有待深入研究的地方。本系統(tǒng)給出了項(xiàng)目資金
114、分析的基本框架,但是系統(tǒng)還不夠完善,數(shù)據(jù)庫方面開發(fā)還有欠缺,功能比較單一。我會(huì)在今后的工作和學(xué)習(xí)中去逐步完善。</p><p><b> 致謝</b></p><p> 本課題的開發(fā)是我在用友股份有限公司實(shí)習(xí)期間開發(fā)完成,首先要感謝我的導(dǎo)師孫晨霞孫老師同意我使用在公司做的模塊作為畢業(yè)設(shè)計(jì),并對(duì)我提供指導(dǎo)幫助。在此衷心的感謝孫老師對(duì)我的指導(dǎo)和信任。同時(shí)也要特別感謝院
115、領(lǐng)導(dǎo)及各位答辯老師、任課老師對(duì)我學(xué)習(xí)的幫助和支持,只有在您的幫助和支持下,我才能順利的完成學(xué)業(yè)。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]BruceEckel.《Java編程思想》. 機(jī)械工業(yè)出版社, 2007年6月</p><p> [2]劉中兵Java研究室《Java高手真經(jīng)》.電子工業(yè)出版社,2009年3
116、月</p><p> [3]徐孝凱《數(shù)據(jù)結(jié)構(gòu)教程》(Java語言描述). 清華大學(xué)出版社,2010年8月</p><p> [4]Thomas A.Powell《HTML5&CSS》.清華大學(xué)出版社,2011年6月</p><p> [5]java動(dòng)畫、圖形和極富客戶端效果開發(fā) 機(jī)械工業(yè)出版社</p><p> [6] 閻宏編
117、著,《java與模式》,電子工業(yè)出版社,2002</p><p> [7]孫衛(wèi)琴,李洪成.《大話設(shè)計(jì)模式》.電子工業(yè)出版社,2003年6月:1-205</p><p> [8]耿祥義,張躍平.《Java核心技術(shù)1》. 清華大學(xué)出版社,2003年5月1日:1-354</p><p> [9]BruceEckel.《JSP編程思想》. 機(jī)械工業(yè)出版社,2003年1
118、0月:1-378</p><p> [10]FLANAGAN.《JSP技術(shù)手冊(cè)》. 中國電力出版社,2002年6月:1-465</p><p> [11]孫一林,彭波.《JSP數(shù)據(jù)庫編程實(shí)例》. 清華大學(xué)出版社,2002年8月:30-210</p><p> [12]飛思科技產(chǎn)品研發(fā)中心.《JSP應(yīng)用開發(fā)詳解》.電子工業(yè)出版社,2003年9月:32-300&l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑項(xiàng)目資金分析畢業(yè)論文最終版.doc
- 資金管理畢業(yè)論文
- 貨幣資金內(nèi)部控制分析畢業(yè)論文
- java建筑項(xiàng)目資金分析
- 資金內(nèi)部控制畢業(yè)論文
- 建筑畢業(yè)論文
- 建筑畢業(yè)論文
- 畢業(yè)論文---建筑項(xiàng)目質(zhì)量與進(jìn)度研究
- 建筑專業(yè)畢業(yè)論文-- 混凝土裂縫分析
- 建筑保溫的探索分析畢業(yè)論文
- 建筑項(xiàng)目招投標(biāo)畢業(yè)論文外文翻譯
- 建筑施工項(xiàng)目安全管理研究-畢業(yè)論文
- 建筑專業(yè)畢業(yè)論文-- 混凝土裂縫分析
- 建筑工程項(xiàng)目管理畢業(yè)論文
- 畢業(yè)論文--建筑施工項(xiàng)目成本管理研究
- 建筑施工項(xiàng)目安全管理研究畢業(yè)論文
- 畢業(yè)論文——建筑項(xiàng)目間進(jìn)行知識(shí)共享的影響因素分析
- 貨幣資金管理畢業(yè)論文
- 貨幣資金管理畢業(yè)論文
- 建筑監(jiān)理畢業(yè)論文--監(jiān)理項(xiàng)目管理控制要點(diǎn)
評(píng)論
0/150
提交評(píng)論