2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩44頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  計(jì)算機(jī)與網(wǎng)絡(luò)工程系</b></p><p><b>  本科畢業(yè)論文</b></p><p>  單位代碼: </p><p>  分 類 號(hào): </p><p>  密 級(jí):

2、</p><p>  學(xué) 號(hào): </p><p>  論文題目:基于MVC1技術(shù)的物流網(wǎng)站開(kāi)發(fā)</p><p>  作 者: </p><p>  學(xué)科專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)</p><p>  指導(dǎo)教師: </p><p>  日 期:

3、 </p><p><b>  摘要</b></p><p>  隨著電腦和因特網(wǎng)技術(shù)的發(fā)展,不論行業(yè)的大小,計(jì)算機(jī)軟件都是不可缺少的東西。學(xué)校、醫(yī)院、石油開(kāi)采都用到計(jì)算機(jī)相關(guān)的知識(shí)。在各行各業(yè)中,管理一直是大部分公司所關(guān)注的事情,怎么樣管理好一個(gè)公司?怎么樣管理好手下的員工?這或許是公司領(lǐng)導(dǎo)層的人們討論的熱點(diǎn)話題。物流公司也離不開(kāi)電腦、管理軟

4、件。物資運(yùn)輸公司在生活中起著很重要的作用。由于物資種類的繁多、數(shù)量的龐大,對(duì)物資的管理也是一個(gè)很大的問(wèn)題。本系統(tǒng)簡(jiǎn)單地模擬并實(shí)現(xiàn)了物流過(guò)程中的大部分功能。本系統(tǒng)的特點(diǎn)是操作簡(jiǎn)單,容易掌握??蛻糁恍枰ㄟ^(guò)網(wǎng)頁(yè)進(jìn)行一些簡(jiǎn)單的操作,比如發(fā)布貨物信息、查詢等。當(dāng)然系統(tǒng)管理員有權(quán)限對(duì)客戶所填寫的信息進(jìn)行審核,以防止胡亂填寫的數(shù)據(jù)造成不必要的麻煩。管理員審核通過(guò)的信息,在審核的同時(shí)生成訂單。</p><p><b>

5、;  Abstract</b></p><p>  With the development of computer and Internet technology, regardless of the size of the industry, Computer software is indispensable things. Computer-related knowledge is used

6、in Schools, hospitals, oil production. In all walks of life, most of the company management has been a matter of concern, how to manage a company? How to manage his staff? Maybe it is a hot topic to some leaders. Logisti

7、cs companies can not do without computers, management software. Goods transportation companies play an i</p><p>  關(guān)鍵字:MySQL5.0數(shù)據(jù)庫(kù)系統(tǒng);MVC框架;物流管理系統(tǒng) </p><p>  KEYWORDS: MySQL5.0 Database; MVC framew

8、ork; Logistics Management System </p><p><b>  目錄</b></p><p><b>  目錄IV</b></p><p>  一、數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明1</p><p>  1.選題說(shuō)明及需求介紹1</p><p>  1.1

9、選擇該系統(tǒng)的原因與目的1</p><p><b>  1.1.1原因1</b></p><p><b>  1.1.2目的1</b></p><p>  1.2.需求分析1</p><p>  1.3可行性分析2</p><p><b>  1.4開(kāi)發(fā)環(huán)境

10、2</b></p><p>  二、數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明3</p><p>  三、系統(tǒng)功能模塊劃分9</p><p>  四、實(shí)現(xiàn)過(guò)程及效果展示11</p><p><b>  1.實(shí)現(xiàn)過(guò)程11</b></p><p><b>  2.效果展示12</b>

11、</p><p>  2.1前臺(tái)主界面12</p><p>  2.2前臺(tái)搜索頁(yè)面13</p><p>  2.3前臺(tái)找回密碼界面14</p><p>  2.4車牌號(hào)查詢頁(yè)面15</p><p>  2.5國(guó)道查詢頁(yè)面15</p><p>  2.6后臺(tái)登陸界面16</p&g

12、t;<p>  2.7后臺(tái)導(dǎo)航界面17</p><p>  2.8貨物詳細(xì)信息界面18</p><p>  2.9車輛信息界面19</p><p><b>  五、總結(jié)21</b></p><p><b>  六、參考材料23</b></p><p>

13、<b>  七、致謝25</b></p><p><b>  八、附錄27</b></p><p>  中文論文題目:基于MVC1技術(shù)的物流管理網(wǎng)站開(kāi)發(fā)</p><p><b>  一、緒論</b></p><p><b>  1.選題說(shuō)明及需求</b>

14、;</p><p>  1.1選擇該系統(tǒng)的原因與目的</p><p><b>  1.1.1原因:</b></p><p>  第一,各種各樣的物資運(yùn)輸公司在生活中起著重要的作用。由于物資種類的繁多、數(shù)量的龐大,對(duì)物資的管理也是一個(gè)很大的問(wèn)題。為了更容易、更方便的及時(shí)了解到客戶要運(yùn)輸?shù)奈镔Y以及管理整個(gè)物流公司的流程,要是有一個(gè)簡(jiǎn)單的、容易操作的

15、網(wǎng)站管理系統(tǒng),將會(huì)大大的節(jié)省人力、物力,提高運(yùn)輸?shù)男?。因此,我設(shè)計(jì)了這個(gè)物流管理網(wǎng)站。</p><p>  第二,物流公司每天都有很多的貨物要運(yùn)輸進(jìn)來(lái)或者運(yùn)輸出去,那么每天的數(shù)據(jù)量很大,要是去用手工的方式記錄這些數(shù)據(jù),不但效率不搞,而且容易出錯(cuò)。如果數(shù)據(jù)記錄錯(cuò)誤,說(shuō)不定會(huì)導(dǎo)致不必要的后果。比如:要往A地運(yùn)輸1000噸煤炭,結(jié)果記錄成了B地并且將煤炭發(fā)往B地了,那這樣就造成了很嚴(yán)重的后果。</p>

16、<p>  第三,對(duì)于一個(gè)部門或公司來(lái)說(shuō),數(shù)據(jù)是一筆寶貴的資產(chǎn)。紙質(zhì)的數(shù)據(jù)有容易丟失、損壞的不足,但要是把這些數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中,不僅可以減少數(shù)據(jù)的丟失,節(jié)省空間而且在調(diào)用的時(shí)候提取容易。假如某公司每天產(chǎn)生100張紙質(zhì)的數(shù)據(jù),那么一月會(huì)有多少呢?一年呢?我們可以想象下,那可能需要幾個(gè)資料室,但是如果把它們保存到電腦上,卻僅需要一臺(tái)電腦。</p><p>  1.1.2目的:由于物資種類的繁多、數(shù)量的龐大

17、,對(duì)物資的管理也是一個(gè)很大的問(wèn)題。為了更容易、更方便的及時(shí)了解到客戶要運(yùn)輸?shù)奈镔Y以及管理整個(gè)物流公司的流程,要是有一個(gè)簡(jiǎn)單的、容易操作的網(wǎng)站管理系統(tǒng),將會(huì)大大地節(jié)省人力、物力,提高運(yùn)輸?shù)男省?lt;/p><p><b>  1.2.需求分析</b></p><p>  了解物流公司的業(yè)務(wù)流程,包括貨物、車輛的分派情況、客戶訂單的處理、合作伙伴的相關(guān)信息、系統(tǒng)管理人員等。

18、系統(tǒng)分為前臺(tái)和后臺(tái)兩部分。</p><p>  實(shí)現(xiàn)客戶通過(guò)前臺(tái)發(fā)布貨物信息的頁(yè)面發(fā)布自己的信息,在發(fā)布前先驗(yàn)證客戶是否登陸,如果沒(méi)有登陸,則提示客戶注冊(cè)登錄;只有登陸的客戶才可以發(fā)布貨物信息。</p><p>  前臺(tái)要提供客戶和合作伙伴的注冊(cè)。對(duì)于客戶,要提供密碼找回功能。</p><p>  前臺(tái)要提供一些輔助工具,比如車牌號(hào)碼歸屬地查詢、國(guó)道查詢等。<

19、/p><p>  前臺(tái)要顯示一些必要的信息,比如由于天氣的原因,不能及時(shí)處理客戶的訂單,要一滾動(dòng)消息的方式顯示出來(lái);還要顯示最近的貨物信息、合作伙伴的信息等。還有關(guān)于貨物運(yùn)輸?shù)南嚓P(guān)知識(shí)。</p><p>  后臺(tái)要實(shí)現(xiàn)登錄系統(tǒng)的控制,只有注冊(cè)了的系統(tǒng)管理員才可以登陸。對(duì)于系統(tǒng)管理員,提供添加、修改、刪除、查詢等功能。系統(tǒng)管理員可以對(duì)后臺(tái)的信息進(jìn)行操作。</p><p>

20、  后臺(tái)要實(shí)現(xiàn)對(duì)客戶和合作伙伴發(fā)布的信息進(jìn)行審核,以防止亂填的信息造成不必要的后果。在審核的同時(shí)要與客戶發(fā)布的信息相應(yīng)的訂單,訂單編號(hào)要求自動(dòng)生成。</p><p>  后天要實(shí)現(xiàn)運(yùn)輸工具的添加、修改、刪除等功能,車輛按照快慢程度分為快速、中速、慢速等。</p><p>  根據(jù)訂單上的內(nèi)容進(jìn)行安排車輛。</p><p>  要有動(dòng)態(tài)信息的發(fā)布、刪除、修改等。動(dòng)態(tài)信

21、息就是關(guān)于天氣造成的不便,在后臺(tái)添加后顯示在前臺(tái)。</p><p><b>  1.3可行性分析</b></p><p>  根據(jù)需求分析,本系統(tǒng)主要就是處理數(shù)據(jù),對(duì)數(shù)據(jù)的增加、修改、查詢、刪除。這些都是對(duì)存放在數(shù)據(jù)庫(kù)中的數(shù)據(jù)的最基本的操作,而數(shù)據(jù)庫(kù)提供了這些基本的操作,因此對(duì)數(shù)據(jù)的操作不會(huì)存在問(wèn)題。而根據(jù)運(yùn)輸公司的業(yè)務(wù)流程,比如貨物的流動(dòng)方向都不是特別復(fù)雜,能夠用程

22、序來(lái)模擬實(shí)現(xiàn)。對(duì)于貨物等的基本屬性,都可以用數(shù)據(jù)庫(kù)來(lái)設(shè)計(jì)實(shí)現(xiàn)。</p><p><b>  1.4開(kāi)發(fā)環(huán)境</b></p><p>  硬件環(huán)境:Windows XP、內(nèi)存512M、硬盤80G</p><p>  開(kāi)發(fā)工具:MySQL5.0、JDK1.6、Dreamweaver8.0、Fireworks8.0、Myeclipse6.0、tomc

23、at6.0</p><p><b>  二、數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明</b></p><p>  數(shù)據(jù)庫(kù)名稱為wuliu,數(shù)據(jù)庫(kù)包括12張表,其中每張表都包含一些字段,用來(lái)描述各個(gè)事物的屬性。大多數(shù)表中的字段都是從頁(yè)面添加過(guò)來(lái)。</p><p><b>  分別如下:</b></p><p>  表2.1:物

24、流動(dòng)態(tài)表(db_active)</p><p>  表2.2:車牌號(hào)碼表(db_carsource)</p><p>  表2.3:車輛類型表(db_cartype)</p><p>  表2.4:車輛信息表(db_carmessage)</p><p>  表2.5:會(huì)員表(db_customor)</p><p>

25、  表2.6:動(dòng)態(tài)信息表(db_dyinfo)</p><p>  表2.7:國(guó)道信息表(db_guodao)</p><p>  表2.8:企業(yè)信息表(db_enterprise)</p><p>  表2.9:貨物信息表(db_goodsmeg)</p><p>  表2.10:物流知識(shí)表(db_knowledge)</p>

26、<p>  表2.11:管理員表(db_manager)</p><p>  表2.12:訂單表(db_orderd)</p><p>  三、系統(tǒng)功能模塊劃分</p><p>  1.系統(tǒng)分為前臺(tái)和后臺(tái)兩部分。</p><p>  2.前臺(tái)主要的模塊有:網(wǎng)站首頁(yè)、物流動(dòng)態(tài)、物流知識(shí)、貨物信息、運(yùn)輸設(shè)備、企業(yè)信息、輔助工具七個(gè)模塊

27、。</p><p>  3.后臺(tái)主要的模塊有:合作伙伴管理、貨物信息管理、訂單信息管理、車輛信息管理、公告信息管理、物流知識(shí)管理、會(huì)員信息管理、管理管理員八個(gè)模塊。如圖:</p><p>  四、實(shí)現(xiàn)過(guò)程及效果展示</p><p><b>  1.實(shí)現(xiàn)過(guò)程</b></p><p>  系統(tǒng)主要采用了jsp+Servlet

28、+javabean的MVC開(kāi)發(fā)模式、使用MySQL5.0數(shù)據(jù)庫(kù)。</p><p><b>  設(shè)計(jì)數(shù)據(jù)庫(kù)。</b></p><p>  收集各個(gè)頁(yè)面所需要的資料,包括圖片、文字效果等等。根據(jù)數(shù)據(jù)庫(kù)設(shè)計(jì)前臺(tái)和后臺(tái)頁(yè)面,大多數(shù)頁(yè)面都是靜態(tài)頁(yè)面。</p><p>  寫一些工具類,比如驗(yàn)證碼、分頁(yè)、加密、亂碼處理等。</p><p

29、>  根據(jù)數(shù)據(jù)庫(kù)表寫javabean;寫各個(gè)模塊所需要的接口,接口中基本包含對(duì)應(yīng)與數(shù)據(jù)表的增加、更新、刪除、查詢等方法;接口寫好之后寫每個(gè)接口的實(shí)現(xiàn)類,并且測(cè)試每個(gè)實(shí)現(xiàn)類的正確性。</p><p>  接下來(lái)就開(kāi)始完成Servlet,每一類要在頁(yè)面上顯示的信息對(duì)應(yīng)一個(gè)Servlet,測(cè)試每個(gè)Servlet的正確性。</p><p>  修改前面做的頁(yè)面,將需要顯示動(dòng)態(tài)信息的頁(yè)面修改為

30、jsp頁(yè)面,在這些頁(yè)面上添加一定的代碼,得到需要的數(shù)據(jù)。查看頁(yè)面的外觀是否美觀,并且查看得到的數(shù)據(jù)是否是想要的數(shù)據(jù),進(jìn)而修改Servlet或者實(shí)現(xiàn)類。</p><p>  給那些需要添加驗(yàn)證的頁(yè)面添加驗(yàn)證,比如郵箱的格式、所填入的數(shù)據(jù)的類型、長(zhǎng)度等。對(duì)頁(yè)面不美觀的頁(yè)面進(jìn)行修改。</p><p>  測(cè)試每個(gè)頁(yè)面、Servlet都沒(méi)有問(wèn)題之后,開(kāi)始將所有的頁(yè)面鏈接起來(lái)。</p>

31、<p>  測(cè)試整個(gè)系統(tǒng),檢查是否有代碼或頁(yè)面上的錯(cuò)誤,有沒(méi)有邏輯錯(cuò)誤。對(duì)錯(cuò)誤再進(jìn)行修改,再進(jìn)行測(cè)試系統(tǒng),如此多反復(fù)幾次。</p><p><b>  2.效果展示</b></p><p><b>  2.1前臺(tái)主界面</b></p><p>  2.2前臺(tái)搜索頁(yè)面及搜索結(jié)果頁(yè)面</p><

32、p>  2.3前臺(tái)找回密碼界面</p><p>  2.4車牌號(hào)查詢頁(yè)面</p><p><b>  2.5國(guó)道查詢頁(yè)面</b></p><p><b>  2.6后臺(tái)登陸界面</b></p><p><b>  2.7后臺(tái)導(dǎo)航界面</b></p><

33、p>  2.8貨物詳細(xì)信息界面</p><p><b>  2.9車輛信息界面</b></p><p><b>  五、總結(jié)</b></p><p><b>  收獲</b></p><p>  通過(guò)做這個(gè)系統(tǒng),使我了解到了很多關(guān)于物流運(yùn)輸方面的知識(shí)。包括物流的基本職能、

34、物流分類、物流管理以及運(yùn)輸方式。</p><p>  做一個(gè)項(xiàng)目必須要考慮到各種情況,以便適應(yīng)不同的情況。在項(xiàng)目開(kāi)始之前,要收集很多相關(guān)資料,包括圖片、文檔、數(shù)據(jù)等等。</p><p>  在項(xiàng)目開(kāi)發(fā)開(kāi)始的時(shí)候,首先要做好需求分析。對(duì)于項(xiàng)目來(lái)說(shuō),需求非常重要,需求的一個(gè)小小的改動(dòng)說(shuō)不定會(huì)導(dǎo)致整個(gè)項(xiàng)目的失敗。</p><p>  在開(kāi)發(fā)過(guò)程中,應(yīng)該有個(gè)計(jì)劃,第一步做什

35、么,接下來(lái)做什么。不要哪個(gè)模塊都想要做,那樣只會(huì)導(dǎo)致模塊序列紛亂,思路模糊不清,最后哪一個(gè)都做不好。</p><p>  通過(guò)該項(xiàng)目,對(duì)頁(yè)面的制作水平有了進(jìn)一步的提高,了解到怎么樣布局能夠達(dá)到最好的效果;在完成了所有的頁(yè)面和代碼后,就是整合調(diào)試。在這個(gè)階段會(huì)比較麻煩,要反復(fù)的測(cè)試調(diào)試。對(duì)于一個(gè)人開(kāi)發(fā)的小系統(tǒng),整合都很費(fèi)事,那么對(duì)于團(tuán)隊(duì)開(kāi)發(fā)的大項(xiàng)目,溝通合作就顯得尤為重要。</p><p>

36、<b>  不足</b></p><p>  對(duì)于物流運(yùn)輸業(yè)的業(yè)務(wù)還有不了解的地方,因此整個(gè)系統(tǒng)還存在很多業(yè)務(wù)邏輯方面的不足,導(dǎo)致系統(tǒng)僅能滿足部分業(yè)務(wù)需求,對(duì)于一些特殊業(yè)務(wù)流程還存在一些欠缺。</p><p>  頁(yè)面在美觀方面還存在一些不足,比如后臺(tái)的頁(yè)面比較單調(diào)等。</p><p>  系統(tǒng)在人性化方面做的不夠完善。比如有很多內(nèi)容要求客戶去

37、填寫,而不是以選擇的方式進(jìn)行填寫。</p><p>  在代碼優(yōu)化方面也不夠好,有些代碼的執(zhí)行效率不是很好,還存在一些重復(fù)的代碼。</p><p>  代碼規(guī)范方面,部分代碼沒(méi)有注意格式,也沒(méi)有添加必要的注釋。</p><p>  系統(tǒng)設(shè)計(jì)的有些地方不合理。比如安排車輛發(fā)貨以后,那些被安排的車輛就消失了,沒(méi)有設(shè)計(jì)當(dāng)貨物運(yùn)輸?shù)竭_(dá)目的地之后,車輛應(yīng)該都返回來(lái)。</

38、p><p><b>  六、參考材料</b></p><p>  [1](美)??藸?著,陳昊鵬 譯 《Java編程思想》機(jī)械工業(yè)出版社2007-6-1 880頁(yè)</p><p>  [2] 李鐘蔚,馬文強(qiáng),王殊宇 Java項(xiàng)目開(kāi)發(fā)實(shí)例自學(xué)手冊(cè) 人民郵電出版社 2008-09-01</p><p>  [3] (美國(guó)

39、)(Horstmann Gay S.)昊斯特曼 (美國(guó))Gary Cornell 譯者:葉乃文 鄺勁筠 杜永萍 JAVA核心技術(shù)卷1:基礎(chǔ)知識(shí)(原書第8版) 機(jī)械工業(yè)出版社2008年</p><p>  [4] 李克娜 物流基礎(chǔ)知識(shí) 機(jī)械工業(yè)出版社 2004 年8月</p><p>  [5] 張新曼 精通JSP-WEB開(kāi)發(fā)技術(shù)與典型應(yīng)用 人民郵電出版社 2007-2</p&

40、gt;<p>  [6] 唐友國(guó),湛洪波主編 JSP網(wǎng)站開(kāi)發(fā)詳解 電子工業(yè)出版社 2008-10-1</p><p>  [7] 史斌星 史佳編著 Java基礎(chǔ)及應(yīng)用教程 清華大學(xué)出版社 2007年5月</p><p>  [8] 夏寬理 算法基礎(chǔ) 高等教育出版社 2003年10月</p><p>  [9] 王珊 薩師煊 數(shù)據(jù)庫(kù)系

41、統(tǒng)概論(第四版)高等教育出版社 2006年5月</p><p>  [10]劉曉華 張健 周慧貞編著 JSP應(yīng)用開(kāi)發(fā)詳解(第三版)電子工業(yè)出版社 2007年1月</p><p><b>  七、致謝</b></p><p>  感謝我的指導(dǎo)老師xx老師,你嚴(yán)謹(jǐn)細(xì)致、一絲不茍的作風(fēng)一直是我工作、學(xué)習(xí)中的榜樣;你循循善誘的教導(dǎo)和不拘一格的思路給予我

42、無(wú)盡的啟迪。這片論文的每個(gè)實(shí)驗(yàn)細(xì)節(jié)和每個(gè)數(shù)據(jù),都離不開(kāi)你的細(xì)心指導(dǎo)。而你開(kāi)朗的個(gè)性和寬容的態(tài)度,幫助我能夠很快的融入我這個(gè)項(xiàng)目的開(kāi)發(fā)過(guò)程中。</p><p>  感謝我來(lái)培訓(xùn)的時(shí)候幫助過(guò)我的所有的老師,有了他們的支持幫助,我才能夠獨(dú)自的完成我的畢業(yè)設(shè)計(jì)。沒(méi)有他們的幫助,還不知道怎么來(lái)完成這個(gè)在大學(xué)中最重要的、也是最后一個(gè)標(biāo)志大學(xué)圓滿結(jié)束的畢業(yè)論文。</p><p>  感謝我的室友們,從遙

43、遠(yuǎn)的家來(lái)到這個(gè)陌生的城市里,是你們和我共同維系著彼此之間兄弟般的感情,維系著寢室那份家的融洽。四年了,仿佛就在昨天。四年里,我們沒(méi)有紅過(guò)臉,沒(méi)有吵過(guò)嘴,沒(méi)有發(fā)生上大學(xué)前所擔(dān)心的任何不開(kāi)心的事情;四年里,我們一起快樂(lè)過(guò),一起悲傷過(guò),一起走過(guò)了1000多個(gè)日日夜夜。只是今后大家就難得再聚在一起吃每年元旦那頓飯了吧,沒(méi)關(guān)系,各奔前程,大家珍重。但愿遠(yuǎn)赴新疆的C和D平平安安,留守學(xué)校的D,E和F快快樂(lè)樂(lè),揮師北上的G順順利利,也愿離開(kāi)我們寢室的

44、H和I開(kāi)開(kāi)心心。我們?cè)谝黄鸬娜兆?,我?huì)記一輩子的。  感謝我的爸爸媽媽,焉得諼草,言樹(shù)之背,養(yǎng)育之恩,無(wú)以回報(bào),你們永遠(yuǎn)健康快樂(lè)是我最大的心愿?! ≡谡撐募磳⑼瓿芍H,我的心情無(wú)法平靜,從開(kāi)始進(jìn)入課題到論文的順利完成,有多少可敬的師長(zhǎng)、同學(xué)、朋友給了我無(wú)言的幫助,在這里請(qǐng)接受我誠(chéng)摯的謝意!</p><p><b>  八、附錄</b></p><p>  附錄部分

45、主要包括各種類中的部分代碼及其代碼的說(shuō)明。</p><p>  連接數(shù)據(jù)庫(kù)類,,這個(gè)類主要采用了Java開(kāi)發(fā)模式中的單子模式。代碼如下:</p><p>  package com.wuliu.DB;</p><p>  import java.sql.Connection;</p><p>  import java.sql.DriverM

46、anager;</p><p>  import java.sql.ResultSet;</p><p>  import java.sql.SQLException;</p><p>  import java.sql.Statement;</p><p>  public class DBManager</p><p&

47、gt;  {private static DBManager db=null;</p><p>  private Connection con=null;</p><p>  DBManager(){</p><p>  try {Class.forName("com.mysql.jdbc.Driver");</p><p

48、>  } catch (ClassNotFoundException e) {</p><p>  System.out.println("找不到類");</p><p><b>  }</b></p><p>  try { con=DriverManager.getConnection("jdb

49、c:mysql://localhost:3306/wuliu","root","mysql");</p><p>  } catch (SQLException e) {System.out.println("連接失敗!");}</p><p><b>  }</b></p><

50、p>  public static DBManager getInstance(){</p><p>  if(db==null){</p><p>  db=new DBManager();</p><p>  return db;}</p><p>  else return db;}</p><p>  p

51、ublic static Connection getConnection()</p><p>  {return DBManager.getInstance().con;}</p><p><b>  }</b></p><p>  javabean類,主要包括動(dòng)態(tài)信息、車輛信息、管理員、訂單、貨物等的一些屬性變量,所有的屬性變量都定義為私有

52、的,只為其他類提供了get()和set()方法進(jìn)行設(shè)值和取值。下面給出管理員和訂單的javabean。</p><p><b>  管理員代碼:</b></p><p>  package com.wuliu.bean;</p><p>  import java.io.Serializable;</p><p>  p

53、ublic class Admin implements Serializable {</p><p><b>  // 定義屬性</b></p><p>  private Integer id;</p><p>  private String managername;// 用戶名</p><p>  private

54、 String password;// 密碼</p><p>  private String phone; // 電話</p><p>  private String email; // 郵箱</p><p>  /** 默認(rèn)構(gòu)造方法 */</p><p>  public Admin() {</p><p>&l

55、t;b>  }</b></p><p>  public Admin(Integer id, String managername, String password, String phone,</p><p>  String email) {</p><p>  this.id = id;</p><p>  this.

56、managername = managername;</p><p>  this.password = password;</p><p>  this.phone = phone;</p><p>  t his.email = email;</p><p><b>  }</b></p><p&

57、gt;  // 設(shè)置屬性值、獲得屬性值</p><p>  public Integer getId() {</p><p>  return this.id;</p><p><b>  }</b></p><p>  public void setId(Integer id) {</p><p&g

58、t;  this.id = id;</p><p><b>  }</b></p><p>  public String getManagername() {</p><p>  return managername;</p><p><b>  }</b></p><p>

59、;  public void setManagername(String managername) {</p><p>  this.managername = managername;</p><p><b>  }</b></p><p>  public String getPassword() {</p><p>

60、;  return this.password;</p><p><b>  }</b></p><p>  public void setPassword(String password) {</p><p>  this.password = password;</p><p><b>  }</b&

61、gt;</p><p>  public String getPhone() {</p><p>  return phone;</p><p><b>  }</b></p><p>  public void setPhone(String phone) {</p><p>  this.ph

62、one = phone;</p><p><b>  }</b></p><p>  public String getEmail() {</p><p>  return email;</p><p><b>  }</b></p><p>  public void se

63、tEmail(String email) {</p><p>  this.email = email;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  訂單代碼:</b></p><p>  

64、package com.wuliu.bean;</p><p>  public class Orderd {</p><p>  private int id;</p><p>  private String ordernum; // 訂單號(hào)</p><p>  private String goodsname; // 貨物名稱</

65、p><p>  private String consigntime; // 發(fā)布時(shí)間</p><p>  private String consignee; // 收貨人</p><p>  private String cartype; // 車牌號(hào)</p><p>  private String orderstate; // 訂單狀態(tài)&l

66、t;/p><p>  public Orderd(String ordernum, String goodsname, String consigntime,String consignee, String carnum, String orderstate, int id) {</p><p><b>  super();</b></p><p>

67、;  this.ordernum = ordernum;</p><p>  this.goodsname = goodsname;</p><p>  this.consigntime = consigntime;</p><p>  this.consignee = consignee;</p><p>  this.cartype =

68、cartype;</p><p>  this.orderstate = orderstate;</p><p>  this.id = id;</p><p><b>  }</b></p><p>  public Orderd() {</p><p><b>  }</b&g

69、t;</p><p>  public String getOrdernum() {</p><p>  return ordernum;</p><p><b>  }</b></p><p>  public void setOrdernum(String ordernum) {</p><p&g

70、t;  this.ordernum = ordernum;</p><p><b>  }</b></p><p>  public String getGoodsname() {</p><p>  return goodsname;</p><p><b>  }</b></p>

71、<p>  public void setGoodsname(String goodsname) {</p><p>  this.goodsname = goodsname;</p><p><b>  }</b></p><p>  public String getConsigntime() {</p><p

72、>  return consigntime;</p><p><b>  }</b></p><p>  public void setConsigntime(String consigntime) {</p><p>  this.consigntime = consigntime;</p><p><b&

73、gt;  }</b></p><p>  public String getConsignee() {</p><p>  return consignee;</p><p><b>  }</b></p><p>  public void setConsignee(String consignee) {&

74、lt;/p><p>  this.consignee = consignee;</p><p><b>  }</b></p><p>  public String getCartype() {</p><p>  return cartype;</p><p><b>  }</b

75、></p><p>  public void setCartype(String cartype) {</p><p>  this.cartype = cartype;</p><p><b>  }</b></p><p>  public String getOrderstate() {</p>

76、<p>  return orderstate;</p><p><b>  }</b></p><p>  public void setOrderstate(String orderstate) {</p><p>  this.orderstate = orderstate;</p><p><

77、b>  }</b></p><p>  public int getId() {</p><p>  return id;</p><p><b>  }</b></p><p>  public void setId(int id) {</p><p>  this.id =

78、id;</p><p><b>  }</b></p><p><b>  }</b></p><p>  接口類,在接口中基本有添加、修改、刪除、查詢等方法,他們都是抽象方法,每個(gè)方法要具體實(shí)現(xiàn)的功能在實(shí)現(xiàn)類中實(shí)現(xiàn)。使用接口,可以方便的添加一個(gè)或多個(gè)方法,只需要在實(shí)現(xiàn)類中實(shí)現(xiàn)它們。在其他類調(diào)用的時(shí)候,他只需要知道方法名就

79、可以,不需要知道底層具體是怎么實(shí)現(xiàn)的。下面給出合作伙伴和貨物信息的接口。</p><p><b>  合作伙伴:</b></p><p>  package com.wuliu.manage;</p><p>  import java.util.List;</p><p>  import com.wuliu.bean

80、.Enterprise;</p><p>  import com.wuliu.logicbusiness.PageDiv;</p><p>  public interface EPManager {</p><p>  public boolean AddEP(Enterprise ep);</p><p>  public int Re

81、viewEP(Enterprise ep);</p><p>  public boolean DeleteEP(Enterprise ep);</p><p>  public List GetSingleEP(int id);</p><p>  public List GetlistEP(PageDiv pagediv);</p><p&g

82、t;  public List GetlistEP();</p><p>  public List GetEP(PageDiv pagediv);</p><p><b>  }</b></p><p><b>  貨物信息:</b></p><p>  package com.wuliu.man

83、age;</p><p>  import java.util.List;</p><p>  import com.wuliu.bean.*;</p><p>  import com.wuliu.logicbusiness.PageDiv;</p><p>  import com.wuliu.bean.*;</p><

84、;p>  public interface GoodsManager {</p><p>  public boolean AddGoods(Goodsmeg goods);</p><p>  public boolean UpdateGoods(Goodsmeg goods);</p><p>  public boolean DeleteGoods(Go

85、odsmeg goods);</p><p>  public Goodsmeg UniqueGoods(Goodsmeg goods);</p><p>  public Goodsmeg UniqueGoods1(Goodsmeg goods);</p><p>  public List GetGoods(PageDiv pageDiv);</p>

86、<p>  public List GetGoods1(PageDiv pageDiv, Customor usernumber);</p><p>  public List UiGetGoods();</p><p><b>  }</b></p><p>  實(shí)現(xiàn)類,都是實(shí)現(xiàn)了接口中定義的方法。實(shí)現(xiàn)類中就開(kāi)始具體的操作數(shù)據(jù)表

87、了,調(diào)用有關(guān)的方法實(shí)現(xiàn)添加、修改、刪除、查詢。下面是有關(guān)車輛類別的實(shí)現(xiàn)類:</p><p>  package com.wuliu.imp;</p><p>  import java.sql.ResultSet;</p><p>  import java.sql.SQLException;</p><p>  import java.ut

88、il.ArrayList;</p><p>  import java.util.List;</p><p>  import com.mysql.jdbc.Connection;</p><p>  import com.mysql.jdbc.Statement;</p><p>  import com.wuliu.DB.DBManage

89、r;</p><p>  import com.wuliu.bean.Cartype;</p><p>  import com.wuliu.manage.Cartypemanager;</p><p>  public class ImpCartype implements Cartypemanager {</p><p>  java.s

90、ql.Connection con = null;</p><p>  java.sql.Statement st = null;</p><p>  // 實(shí)現(xiàn)了數(shù)據(jù)庫(kù)連接</p><p>  public ImpCartype() {</p><p>  con = DBManager.getConnection();</p>

91、<p><b>  try {</b></p><p>  st = con.createStatement();</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b&g

92、t;</p><p><b>  }</b></p><p>  // 增加一條車輛類型</p><p>  public void addcartype(Cartype cartype) {</p><p>  String typename = cartype.getTypename();</p>&l

93、t;p>  String sql = "insert into db_cartype(typename)values('" + typename</p><p><b>  + "')";</b></p><p>  // System.out.println(sql);</p><p&

94、gt;<b>  try {</b></p><p>  st.executeUpdate(sql);</p><p>  } catch (SQLException e) {</p><p><b>  }</b></p><p><b>  }</b></p>

95、<p>  // 根據(jù)ID刪除一條車輛類型</p><p>  public void deletecartype(Cartype cartype) {</p><p>  int id = cartype.getId();</p><p>  String sql = "delete from db_cartype where id=&quo

96、t; + id;</p><p><b>  try {</b></p><p>  st.executeUpdate(sql);</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b&g

97、t;  }</b></p><p><b>  }</b></p><p>  // 根據(jù)ID取出一條類型</p><p>  public Cartype getUniqCartype(Cartype cartype) {</p><p>  int id = cartype.getId();</p&

98、gt;<p>  String sql = "select * from db_cartype where id=" + id;</p><p><b>  try {</b></p><p>  ResultSet rs = st.executeQuery(sql);</p><p>  while (rs.

99、next()) {</p><p>  cartype.setId(rs.getInt("id"));</p><p>  cartype.setTypename(rs.getString("typename"));</p><p><b>  }</b></p><p>  }

100、catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  return cartype;</p><p><b>  }</b></p><p><b>

101、;  // 取出所有類型</b></p><p>  public List getcartype() {</p><p>  List list = new ArrayList();</p><p>  ResultSet rs = null;</p><p>  String sql = "select * from

102、 db_cartype";</p><p><b>  try {</b></p><p>  rs = st.executeQuery(sql);</p><p>  while (rs.next()) {</p><p>  Cartype cartype = new Cartype();</p>

103、;<p>  cartype.setId(rs.getInt("id"));</p><p>  cartype.setTypename(rs.getString("typename"));</p><p>  list.add(cartype);</p><p><b>  }</b>&l

104、t;/p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p>  return list;</p><p><b>  }</b></p>

105、;<p>  public void updateCartype(Cartype cartype) {</p><p>  int id = cartype.getId();</p><p>  String typename = cartype.getTypename();</p><p>  String sql = "update db

106、_cartype set typename='" + typename</p><p>  + "'where id=" + id;</p><p><b>  try {</b></p><p>  st.executeUpdate(sql);</p><p>  } ca

107、tch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  靜態(tài)代

108、理類,它們主要代理接口類,通過(guò)靜態(tài)代理類就可以調(diào)用接口中的方法。代理有動(dòng)態(tài)代理和靜態(tài)代理:動(dòng)態(tài)代理只寫一個(gè)代理類,不需要每個(gè)接口都寫一個(gè),只需要將接口變量作為參數(shù)傳給動(dòng)態(tài)代理類就可以了;而靜態(tài)代理需要每個(gè)接口寫一個(gè)代理類。下面給出合作伙伴的代理類:</p><p>  package com.wuliu.proxy;</p><p>  import java.util.List;<

109、/p><p>  import com.wuliu.bean.Enterprise;</p><p>  import com.wuliu.imp.ImpEP;</p><p>  import com.wuliu.logicbusiness.PageDiv;</p><p>  import com.wuliu.manage.EPManager

110、;</p><p>  public class ProxyEP implements EPManager {</p><p>  private EPManager epmanager;</p><p>  public ProxyEP() {</p><p>  this.epmanager = new ImpEP();</p>

111、;<p><b>  }</b></p><p>  public List GetTopNews(int top) {</p><p>  return null;</p><p><b>  }</b></p><p>  public boolean AddEP(Enterpri

112、se ep) {</p><p>  return this.epmanager.AddEP(ep);</p><p><b>  }</b></p><p>  public boolean DeleteEP(Enterprise ep) {</p><p>  return this.epmanager.Delete

113、EP(ep);</p><p><b>  }</b></p><p>  public List GetEP(PageDiv pagediv) {</p><p>  return this.epmanager.GetEP(pagediv);</p><p><b>  }</b></p&g

114、t;<p>  public int ReviewEP(Enterprise ep) {</p><p>  return this.epmanager.ReviewEP(ep);</p><p><b>  }</b></p><p>  public List GetSingleEP(int id) {</p>

115、<p>  return this.epmanager.GetSingleEP(id);</p><p><b>  }</b></p><p>  public List GetlistEP(PageDiv pagediv) {</p><p>  return this.epmanager.GetlistEP(pagediv);&

116、lt;/p><p><b>  }</b></p><p>  public List GetlistEP() {</p><p>  return this.epmanager.GetlistEP();</p><p><b>  }</b></p><p><b>

117、  }</b></p><p>  Servlet類,是javabean類和JSP頁(yè)面之間的橋梁??梢詮腏SP頁(yè)面上得到數(shù)據(jù),然后寫到數(shù)據(jù)庫(kù)中;也可以從數(shù)據(jù)庫(kù)中讀取數(shù)據(jù),通過(guò)Servlet顯示到頁(yè)面上。在Servlet中可以控制頁(yè)面之間的跳轉(zhuǎn),還可以對(duì)登陸時(shí)所填寫的信息進(jìn)行驗(yàn)證。如果和數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致,就可以登陸進(jìn)系統(tǒng);否則就跳回登陸界面。Servlet還可以為頁(yè)面設(shè)置標(biāo)志,比如用戶登陸后頁(yè)面可以得

118、到一個(gè)特定值的變量,在頁(yè)面操作的時(shí)候判斷這個(gè)標(biāo)志是不是從Servlet中傳過(guò)來(lái)的,如果不一致則不能進(jìn)行有些操作。下面給出驗(yàn)證后臺(tái)登陸的Servlet代碼:</p><p>  package com.wuliu.servlet.admin;</p><p>  import java.io.IOException;</p><p>  import java.io.

119、PrintWriter;</p><p>  import javax.servlet.ServletException;</p><p>  import javax.servlet.http.Cookie;</p><p>  import javax.servlet.http.HttpServlet;</p><p>  import

120、javax.servlet.http.HttpServletRequest;</p><p>  import javax.servlet.http.HttpServletResponse;</p><p>  import javax.servlet.http.HttpSession;</p><p>  import com.wuliu.bean.Admin;&

121、lt;/p><p>  import com.wuliu.imp.ImpAdmin;</p><p>  import com.wuliu.logicbusiness.ToGbk;</p><p>  import com.wuliu.logicbusiness.MD5;</p><p>  public class CheckAdmin ext

122、ends HttpServlet {</p><p>  public void doGet(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p><p>  this.doPost(request,

123、 response);</p><p><b>  }</b></p><p>  public void doPost(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletException, IOException {</p

124、><p>  MD5 md5 = new MD5();</p><p>  String user = ToGbk.togb(request.getParameter("username"));// 取用戶名</p><p>  String pwd = md5.getMD5ofStr(request.getParameter("pwd&q

125、uot;));// 取密碼</p><p>  String validate = request.getParameter("code");// 取驗(yàn)證碼</p><p>  // 從Session中獲得驗(yàn)證碼</p><p>  String yy = (String) request.getSession().getAttribute(&q

126、uot;rand");</p><p>  Admin admin = new Admin();</p><p>  admin.setManagername(user);</p><p>  admin.setPassword(pwd);</p><p>  ImpAdmin check = new ImpAdmin();//

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論