




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)論文-活期賬目儲蓄管理摘要銀行作為一個金融機(jī)構(gòu),在現(xiàn)代人們的生活屮扮演著極其重耍的角色。為生活節(jié)湊飛快 的現(xiàn)代人提供快速、便捷、高效的理財服務(wù)。伴隨著電腦技術(shù)的發(fā)展,各大銀行的儲蓄管 理系統(tǒng)也隨z出現(xiàn)在這一舞臺上。本次研究開發(fā)的fi的是設(shè)計并實現(xiàn)一個活期儲蓄賬口管 理系統(tǒng)的基本業(yè)務(wù)。本文介紹了活期儲蓄賬口管理系統(tǒng),并深入分析活期儲蓄賬li管理系統(tǒng)的設(shè)計和各個功 能模塊的實現(xiàn)。系統(tǒng)主要分為五個大的模塊:儲戶開戶模塊、儲戶銷戶模塊、儲戶登錄模 塊、儲戶的賬號存款、取款模塊,能夠?qū)崿F(xiàn)對儲戶的自然信息進(jìn)行管理,對儲戶賬戶信息 進(jìn)行管理,対當(dāng)天交易進(jìn)行統(tǒng)計,以及查詢指泄用戶的交易信息。系統(tǒng)充分采用了
2、模塊化的設(shè)計思想,將各種功能進(jìn)行封裝,提高了系統(tǒng)的整體擴(kuò)展性, 經(jīng)使用證明該系統(tǒng)運(yùn)行良好。關(guān)鍵詞:算法數(shù)據(jù)結(jié)構(gòu)管理ititleabstractbank, as a financi al insti tution, in modern plays an extremely importsnt role in people's 1ives. for modern living section of minato quickly with fast, convenient, and efficient financial services. along with the developmen
3、t of computer technology, the major bank savings management system also arise at this stage.this research aims to design and implement a basic business checking savings account management system this article describes the current savings account management system, and in-depth analysis of current sa
4、vings account management system design and realization of each functional module. system is divided into five modules: customer account login module, customer sales module, savers accolint deposit, withdrawal of modules, savers can be achieved naturally information management, to manage customer acc
5、ount information, trading statistics on that day, and the query transaction information for the specified user.ful1 systems with modular design concept, package various functions, improve the overal1 scalabi1ity of the system, the used result shows that the system is running well.keywords: algorithm
6、 data structure managementtt緒論11研究開發(fā)目的和意義1活期儲蓄賬冃管理系統(tǒng)開發(fā)技術(shù) 21 c+語言簡介22 visual studio 2005 開發(fā)平臺 23活期儲蓄賬h管理介紹 4系統(tǒng)分析5系統(tǒng)設(shè)計51系統(tǒng)模塊設(shè)計51. 1登錄功能模塊的分析61.2用戶口然信息管理功能模塊的分析 61.3賬戶信息管理功能模塊分析 71.4當(dāng)天交易統(tǒng)計功能模塊的分析71.5用戶交易查詢模塊的分析72系統(tǒng)設(shè)計所采用技術(shù)73數(shù)據(jù)庫結(jié)構(gòu)設(shè)計84函數(shù)設(shè)計105關(guān)鍵流程115.1系統(tǒng)函數(shù)調(diào)用流程115. 2系統(tǒng)執(zhí)行流程 12155. 3功能詳細(xì)執(zhí)行流程13調(diào)試分析6測試及運(yùn)行結(jié)果166.
7、 1登陸功能166. 2主操作界面17結(jié)論27致謝28參考文獻(xiàn)29iii1緒論隨著科技的提高和社會的日益發(fā)展,21世紀(jì)已經(jīng)進(jìn)入到了信息、網(wǎng)絡(luò)的高科技時代,互 聯(lián)網(wǎng)逐漸普及,社會現(xiàn)代化的腳步不斷加快,人們的?;钜搽S之向著多元化的方面發(fā)展。 現(xiàn)今的社會,資金流動十分頻繁。不單單是企業(yè)、產(chǎn)商,個人也不例外。銀行作為一個金 融機(jī)構(gòu),在現(xiàn)代人們的生活中扮演著極其重要的角色。為生活節(jié)湊飛快的現(xiàn)代人提供快 速、便捷、高效的理財服務(wù)。伴隨著電腦技術(shù)的發(fā)展,各大銀行的儲蓄管理系統(tǒng)也隨之出 現(xiàn)在這一舞臺上。11. 1研究開發(fā)目的和意義本次研究開發(fā)的冃的是設(shè)計并實現(xiàn)一個活期儲蓿賬冃管理系統(tǒng)的基本業(yè)務(wù)。能夠?qū)崿F(xiàn)對 儲
8、戶的自然信息進(jìn)行管理,對儲戶賬戶信息進(jìn)行管理,對當(dāng)天交易進(jìn)行統(tǒng)計,以及查詢指 定用戶的交易信息這四項主要功能。詳細(xì)的功能包括:用戶開戶(填寫個人詳細(xì)信息)、 銷戶;用戶存入以及支出;統(tǒng)計當(dāng)h開戶銷戶數(shù)量以及交易金額;并且通過輸入指疋用戶 編號査詢該用戶交易信息。軟件采用可視化界而,操作簡單方便。木論文限于程序的特 性,編寫語言是c+語言,開發(fā)平臺則是微軟的visual studio 2005o同時,木系統(tǒng)的開發(fā)采用了囪向刈象的方法,將系統(tǒng)劃分模塊時,盡量做到高內(nèi)聚低耦 合,提高模塊的獨(dú)立性,給模塊功能的增加與修改帯來了方便,從而使得整個軟件的可擴(kuò) 展性人人加強(qiáng)。整個軟件在編寫過程中,采取了規(guī)范
9、化的代碼書寫形式以及清晰的程序注 釋,使得代碼的理解更加容易更加方便。12活期儲蓄賬冃管理系統(tǒng)開發(fā)技術(shù)2. 1 c+語言簡介c+這個詞在中國大陸的程序員圈子中通常被讀做“c加加”,而西方的程序員通常讀做 “c plus plus”,“cpp”。它是一種使用非常廣泛的計算機(jī)編程語言。c+是一種靜態(tài) 數(shù)據(jù)類型檢查的、支持多重編程范式的通用程序設(shè)計語言。它支持過程化程序設(shè)計、數(shù)據(jù) 抽象、面向?qū)ο蟪绦蛟O(shè)計、制作圖標(biāo)等等泛型程序設(shè)計等多種程序設(shè)計風(fēng)格。7c+支持c語言的幾乎全部功能,主要是c89的部分,在語法上與c語言僅有極微妙的 差別(如括號表達(dá)式的左右值性,具體請參考c+標(biāo)準(zhǔn)文獻(xiàn))oc+語言原木不具
10、備面向?qū)ο蟮脑O(shè)計功能,然而隨著面向?qū)ο缶幊痰母拍畹奶岢鲆约叭?java等語言的發(fā)展成熟,c+語言也開發(fā)出了支持而向?qū)ο蠊δ艿陌姹?。c+強(qiáng)大(但容易失控的)模板功能使它能在編譯期完成許多工作,從而大大提高運(yùn)行 期效率。c+在一定程度上可以和c語言很好的結(jié)合,甚至目前大多數(shù)c語言程序是在c+的集成 開發(fā)壞境屮完成的。c+相對眾多的面向?qū)ο蟮恼Z言,具有相當(dāng)高的性能。c+引入了而向?qū)ο蟮母拍睿沟瞄_發(fā)人機(jī)交互類型的應(yīng)用程序更為簡單、快捷。很多 優(yōu)秀的程序框架包括mfc、qt. wxwidgets就是使用的c+。3 4本設(shè)計經(jīng)過比較分析,選擇c+來開發(fā)。2. 2 visual studio 2005 開
11、發(fā)平臺2. 2. 1全新特性幫助用戶應(yīng)對挑戰(zhàn)visual studio 2005增加了許多獨(dú)特的功能,使整個系列產(chǎn)品更加成熟和完善。它是為 用戶開發(fā)的產(chǎn)品,是深入分析用戶的需求,為用戶提供功能強(qiáng)人、高度集成的軟件產(chǎn)品。 它主要包括如下新特性: 語言和ide各有特色和創(chuàng)新的四種語言(visual basic, visual c+, visual c#和visual j#)將 豐富編稈體驗ide的改進(jìn)、提供個性化是提高生產(chǎn)力的保證。14 1512 xet framework 2. 0提供-個可靠的應(yīng)用平臺,為構(gòu)建安全、高性能、關(guān)鍵業(yè)務(wù)的解決方案提供了堅實基 礎(chǔ)。 microsoft office解
12、決方案的開發(fā)增強(qiáng)在 microsoft office excel 2003 microsoft office word 2003 上面開發(fā)解決 方案的能力。 sql server 2005解決方案的開發(fā)sql server 2005集成到visual studio 2005的ide中,可以對數(shù)據(jù)庫對象進(jìn)行開發(fā)和 調(diào)試。12 企業(yè)開發(fā)和軟件生命周期管理visual studio team system町以使軟件開發(fā)團(tuán)隊在開發(fā)過程中降低工作復(fù)雜度,是提 高生產(chǎn)和協(xié)作能力的高效率、集成性、可擴(kuò)展的軟件生命周期管理工具。2. 2. 2強(qiáng)大的集成環(huán)境讓你心花怒放visual studio 2005的很多
13、新功能人人簡化了開發(fā)步驟,提高了開發(fā)效率,讓開發(fā)人員 編寫軟件得心應(yīng)手。photothinking的所冇功能均是在visual studio 2005集成開發(fā)環(huán)境 下采用c#語言開發(fā)完成。下而列舉5點來談?wù)剰膙isual studio 2005得到的新體驗。 分割文件visual c# 2005允許將一個不完全類型分開寫到多個文件中。它使c#開發(fā)人員能夠使 用不完全類型,將包含人量源代碼的類型分割到多個不同源文件中。不完全類型提供更方 便的開發(fā)和代碼維護(hù),使開發(fā)人員能夠分隔開設(shè)計器口動生成和用戶編寫的類型部分,以 便更有效地補(bǔ)充或修改由工具生成的代碼。例如,新建一個windows fonn后,
14、tde會自動生成一些代碼,我們會看到一個很明顯的 地方,就是它在類名前多加一個修飾符partial,同時我們還會在解決方案資源管理器中 發(fā)現(xiàn)系統(tǒng)多產(chǎn)生了一個后綴為designer, cs的文件。 編碼風(fēng)格visual c# 2005對代碼的編寫風(fēng)格 非常講究,能隨時對正在編輯的代碼塊自動進(jìn)行分 段并縮進(jìn)。這極好地糾正了部分編碼人員不合適的風(fēng)格,產(chǎn)生一種潛移3默化的影響。例如,在一個菜單項的text屬性中輸入該菜單的描述文字,則ide會自動以camel變 量命名方式對該菜單進(jìn)行命名。當(dāng)我們每輸入完一條語句,ide會口動對這段代碼進(jìn)行縮 進(jìn)。 跟蹤捉示當(dāng)我們在編寫代碼時,tde會自動跟蹤提示相關(guān)的
15、類、結(jié)構(gòu)體、枚舉、變量等信息。這 極大地提高了編程人員的輸入速度,并保證了編碼的正確性。也許編程人員只需敲兒下空格和冋車,按了兒下方向鍵就可以輕松搞定一段代碼。這對 于visual c# 2005來說,已不再是神奇的事了。 控件多樣化用visual c# 2005新建一個項冃,在ide的工具箱中可以看到品種繁多的工具,讓人 眼花繚亂。在那上而隨便動動鼠標(biāo),就可以拖出一個實用的工具來。photothinking的主界面混合使用了 menustrip> toolstripcontainer toolstrip 和 statusstrip 等控件, 做出來的總體效果就很讓人滿意了。 調(diào)試方便在
16、調(diào)試程序的時候,經(jīng)常會遇到這樣的情況:當(dāng)調(diào)試一大段代碼時,遇到了一個小小的 錯誤,比如參數(shù)賦值錯誤了,這時候,我們往往希望能夠馬上將這個小錯誤改正過來,并 能夠繼續(xù)跟蹤調(diào)試下去,而不用結(jié)束整個調(diào)試過程去修改。在visual studio 2003中,我們必須停止當(dāng)前的調(diào)試,修改完出錯的地方,再重新編 譯,這樣十分不方便。然而visual studio 2005提供了一個"edit and continue”的新 功能,當(dāng)你在調(diào)試時,遇到了小的錯謀需要馬上修改,可以直接進(jìn)行編輯修改,然后繼續(xù) 往下調(diào)試,不需要結(jié)束整個調(diào)試過程,當(dāng)你修改完畢后,調(diào)試器會在后臺自動地進(jìn)行編 譯,并且執(zhí)行的是
17、修改后的新代碼,十分方便。52.3活期儲蓄賬fi管理介紹在這里首先解釋一下活期儲蓄的定義,活期儲蓄指無需任何事先通知,存款戶即可隨時 存取和轉(zhuǎn)訃的一種銀行存款,其形式冇支票存款帳戶,保付支票,木票,旅行支和信用證等. 活期存款占一國貨幣供應(yīng)的最大部分,也是商業(yè)銀行的重要資金來源.鑒于活期存款不僅有 貨幣支付手段和流通手段的職能,同時還貝有較強(qiáng)的派生4能力,因此,商業(yè)銀行在任何時候都必須把活期存款作為經(jīng)營的重點但由于該類存款存 取頻繁,手續(xù)復(fù)雜,所費(fèi)成木較高,因此西方國家商業(yè)銀行一般都不支付利息,有時其至還要 收取一定的手續(xù)費(fèi)?;钇趦π罟芾硐到y(tǒng)是由銀行人員來進(jìn)行操作,用戶通過該系統(tǒng)可以進(jìn)行存款、
18、取款、銷 戶等業(yè)務(wù)。該系統(tǒng)在金融業(yè)給人民帶來了很大的方便,系統(tǒng)開發(fā)成功后,一旦應(yīng)用于銀行 領(lǐng)域,會給管理員與用戶帶來很大的方便,其主要作用具體如下:1、可以代替營業(yè)員進(jìn)行許多繁雜的手動操作2、給用戶帶來了很大的方便3、可以節(jié)省許多人力資源4、可以提高人們的工作效率活期儲蓄賬目管理系統(tǒng)主耍是由于在活期儲蓄處理中,儲戶開戶、銷戶、存入、支出活 動頻繁,為實現(xiàn)儲戶的各種操作而設(shè)計的,本課程設(shè)計的主要功能包括實現(xiàn)儲戶開戶、銷 戶、存入、支出等活動,為了能比較迅速找到賬戶,實現(xiàn)這樣的兒個功能,就要通過鏈表 來存儲數(shù)據(jù)結(jié)構(gòu),其結(jié)構(gòu)則按照c語言的和關(guān)知識定義結(jié)構(gòu)體,其中儲戶開戶、銷戶就是 實現(xiàn)鏈表的插入與刪
19、除,而存入、支出等活動則是實現(xiàn)鏈表中結(jié)點的查找,然后進(jìn)行更 改。93系統(tǒng)分析設(shè)計并實現(xiàn)一個活期儲希賬h管理系統(tǒng)的基本業(yè)務(wù)。能夠?qū)崿F(xiàn)對儲戶的自然信息進(jìn)行管 理,對儲戶賬戶信息進(jìn)行管理,對當(dāng)天交易進(jìn)行統(tǒng)計,以及杳詢指定用戶的交易信息這四 項主要功能。詳細(xì)的功能包括:用戶開戶(填寫個人詳細(xì)信息)、銷戶;用戶存入以及支 出;統(tǒng)計當(dāng)日開戶銷戶數(shù)量以及交易金額;并月通過輸入指定用戶編號査詢該用戶交易信 息。軟件采用可視化界而,操作簡單方便。24系統(tǒng)設(shè)計4. 1系統(tǒng)模塊設(shè)計本程序一共分為五個人功能模塊,包括管理員登陸模塊,用戶自然信息管理模5塊,用戶賬戶信息管理模塊,當(dāng)犬交易統(tǒng)計模塊以及查詢用戶交易信息模塊
20、。每個模塊 下還包含若干個了模塊,模塊中的若十函數(shù)分別實現(xiàn)了各個功能。系統(tǒng)主模塊圖如圖4.1 所示。6圖4. 1系統(tǒng)主模塊圖4.1.1登錄功能模塊的分析管理員通過輸入自己的用戶名密碼登錄該管理系統(tǒng),進(jìn)行各種業(yè)務(wù)操作,如果用戶名密 碼不匹配,則顯示密碼錯誤并且重新登錄。4.1.2用戶自然信息管理功能模塊的分析本模塊主要實現(xiàn)對用戶h然信息跡行管理。其中包括儲戶的開戶和銷戶操作。通過輸入 賬戶的詳細(xì)信息在數(shù)據(jù)庫中添加或刪除該賬戶。儲戶開戶子模塊每當(dāng)有新的儲戶在銀行開戶時,則首先登記儲戶的個人信息,包括:編號、姓名、身份 證號碼、銀行密碼以及首次存款金額。提交后則在數(shù)據(jù)庫屮形成了該儲戶的自然信息,可
21、供以后交易和查詢。儲戶銷戶了模塊該模塊通過輸入儲戶的編號在數(shù)據(jù)庫屮杳詢到該川戶注銷具賬號以及密碼,并統(tǒng)當(dāng)存支估計日入出息6刪除其全部信息,實現(xiàn)銷戶功能。4. 1. 3賬戶信息管理功能模塊分析該模塊主要對儲戶的賬戶信息進(jìn)行管理。其中包括用戶的存入和支出操作。通過輸入用 戶的編號在數(shù)據(jù)庫中查詢到相應(yīng)的用戶并對其賬戶信息進(jìn)行修改。儲戶存入操作子模塊該模塊實現(xiàn)了用戶的存款功能。通過輸入用戶的編號和存入金額,在數(shù)據(jù)庫屮杳詢到相 應(yīng)的用戶并修改其余額,達(dá)到對用戶存款功能的實現(xiàn)。儲戶支出操作子模塊該模塊實現(xiàn)用戶的取款功能。通過輸入用戶的編號和取款金額,在數(shù)據(jù)庫中查詢到相應(yīng) 的用戶并修改其余額,達(dá)到對用戶取款
22、功能的實現(xiàn)。4. 1. 4當(dāng)天交易統(tǒng)計功能模塊的分析開戶和銷戶統(tǒng)計子模塊該模塊實現(xiàn)了將當(dāng)天開戶和銷戶的賬戶分類排列并顯示出來的功能。顯示了:開戶(或 銷戶)用戶的編號、開戶(或銷戶)時間。杳詢后可以返冋信息統(tǒng)計界面繼續(xù)進(jìn)行其他杳 詢操作。方便管理人員統(tǒng)計與查詢。存入和支出統(tǒng)計子模塊該模塊實現(xiàn)了將當(dāng)天存款和取款用戶的信息(包括:編號、操作時間、存款金額)分別 排列顯示出來的功能。方便管理員查詢、統(tǒng)計。操作完成后可以返凹信息統(tǒng)計界而繼續(xù)進(jìn) 行其他杳詢操作。4.1.5用戶交易查詢模塊的分析該模塊只需輸入用戶在銀行的編號,在數(shù)據(jù)庫中査詢到該用戶,并將該用戶的全部操作 信息顯示(包括存取操作、存取時間、
23、及存取金額)。實現(xiàn)查詢指定用戶交易信息的功 能。4.2系統(tǒng)設(shè)計所采用技術(shù)本次課程設(shè)計主要用至!it mvc (m-mode, v-view, ccontrol)思想,其目7的是使分層更加明確,使程序易讀和維護(hù)。m層主要用到的技術(shù)是javabean等,c層主要用到的技術(shù)是actionservlet,使用了 struts的框架進(jìn)行開發(fā),通過重寫action中的execute()方法,實現(xiàn)不同的功能,使用 return xxxx的方法進(jìn)行頁面的跳轉(zhuǎn)。v主要的技術(shù)是jsp技術(shù)。把不同的類型的類封裝 到不同的包中,其中訪問包中的類得權(quán)限有四種,分別是public private、protected 和默
24、認(rèn),根據(jù)不同的情況來用不同的權(quán)限。9 10系統(tǒng)在control層設(shè)計了如下類,并 在數(shù)據(jù)庫中代表相應(yīng)操作,對程序進(jìn)行控制,具體設(shè)計如表4. 2.所示:功能描述對應(yīng)數(shù)擁庫榜addcountacti on實現(xiàn)開戶的功能化數(shù)據(jù)庫中棟delcountaction實現(xiàn)銷戶的功能在數(shù)據(jù)庫中扌 清除deletecountaction實現(xiàn)統(tǒng)計銷戶記錄的功能在數(shù)據(jù)庫中稱depaction實現(xiàn)存款記錄功能在數(shù)據(jù)庫中埠depositaction實現(xiàn)存款功能在數(shù)據(jù)庫中僧log in action實現(xiàn)登錄功能:在數(shù)據(jù)庫中濟(jì)opencount action實現(xiàn)統(tǒng)計開戶記錄的功能在數(shù)據(jù)庫中壇searchu seractio
25、n實現(xiàn)査詢用戶交易信息的功能在數(shù)據(jù)庫中于witaction實現(xiàn)耿款記錄的功能在數(shù)據(jù)庫中坤withdrawaction實現(xiàn)取款的功能在數(shù)據(jù)庫中値4. 3數(shù)據(jù)庫結(jié)構(gòu)設(shè)計選用mysql數(shù)據(jù)庫對表進(jìn)行設(shè)計,其中共包括了 4張表。分別為count表、cash- record 表、count-record 表、以及 manager 表。具體內(nèi)容如下:11 13county用戶信息表,其中包括対儲戶的個人信息、密碼以及存款金額的字段。具體如表 4. 3所示。表 4. 3 count 表7段字段類型是否為空鍵型idintegernotnullprimary keycidvarchar(45)not nullp
26、asswordvarchar(45)not nullnamevarchar(45)not nullidenvarchar(45)not nullmoneyvarchar(45)not nulltimevarchar(45)notnull字段字段類型是否為空鍵型idintegernot nullprimary keycidvarchar(45)not nulltimevarchar(45)not nulltempvarchar(45)not nullmoneyvarchar(45)not nullcash-record賬戶交易記錄表,其中包括操作基本信息的字段。具體內(nèi)容如表4. 4所 示q表 4
27、. 4 cash-record 表7段7段類型是否為空idintegernot nullprimary keycidvarchar(45)not nulltimevarchar(45)not nulltempvarchar(45)notnullcount-record 戶銷戶記錄表,其中包括開戶銷戶操作信息如操作時間。具體內(nèi)容如表4. 5所示。表 4 5 count-record 表字段字段類型是否為空鍵型idintegernot nullprimary keycidvarckar(45)notnullpasswordvarchar(45)not nullmanager管理員表,徂含管理員的編
28、號和密碼。方便管理員進(jìn)行登錄管理。具體內(nèi)容如 表4. 6所示。表 4. 6 manager 表 94. 4函數(shù)設(shè)計對丁實現(xiàn)活期儲蓄賬h管理系統(tǒng)的主耍功能,主要設(shè)計了如下函數(shù),具體函數(shù)名稱、變 量以及作用如表4. 7所示。表4.7函數(shù)列表函數(shù)名稱函數(shù)原型loginpublic boolean loginfstring useridast ring password)用戶登jaddcountpublic void addcount(string cid.stri ng iden.string name,string money.str ing password,string time)用戶開丿ad
29、dcountrecordpublic void addcountrecord(string cid, string time, sring temp)增加開丿opencountpublic list (count/ opencount (strin g name, string temp)返回開丿cashpublic list (cash) cash(string time,st ring temp)查詢當(dāng)addcashrecordpublic list (cash) cash(string time,st ring temp)增加存esearchpublic list (cash) sear
30、chfstring cid)査詢具彳withdrawpublic boolean withdraw(string cid, string change)取款函勺delcountpublic boolean delcount(string cid)用戶銷丿checkpublic string check!string cid)檢驗賬丿depositpublic boolean deposit( string cid,str ing change)存款函34. 5關(guān)鍵流程4. 5. 1系統(tǒng)函數(shù)調(diào)川流程當(dāng)進(jìn)入該系統(tǒng)時,首先進(jìn)入一個登陸頁面,登錄頁面是該系統(tǒng)的首頁ifii,用來讓管理員 登錄,當(dāng)輸入的
31、管理員編號和密碼都正確時,成功跳到主頁面顯示,當(dāng)用戶通過登錄窗口 的表單跳到loginaction類,用來判斷配置信息,判斷管理員編號和登錄密碼,如果編號 或密碼有錯,返回頁而顯示錯誤信息提示垂新登錄,如果信息止確,則登錄成功,并冃把 登錄人的信息以對象的形式放到session緩存中,以便后用,然后跳到主操作頁而,登錄 后實現(xiàn)相關(guān)操作。登陸成功后,跳轉(zhuǎn)到main, htmliffi行其他具體操作。在用f自然信息管理中可進(jìn)行開戶 操作,具體在addcountaction類中實現(xiàn)、銷戶操作在deletecountaction類中實現(xiàn)。對 用戶賬戶信息管理使用了 depositaction類實現(xiàn)存款
32、功能、withdrawaction類實現(xiàn)取款功 能。并且使用depaction類和witaction類對當(dāng)天交易進(jìn)行統(tǒng)計。還可以調(diào)用check類對 指定編號的儲戶交易記錄進(jìn)行杳詢。通過順序調(diào)川功能函數(shù)逐步實現(xiàn)各個功能。系統(tǒng)總調(diào) 用流程圖如圖4. 2所示。11未匹配映射信息圖4. 2系統(tǒng)函數(shù)調(diào)用流程圖4. 5. 2系統(tǒng)執(zhí)行流程當(dāng)客戶端發(fā)出請求,以get或post方式提交到web. xml配置文件當(dāng)中,檢查是否有相 對應(yīng)的映射信息,如果有,則跳轉(zhuǎn)到action中,如果沒有,則返冋頁而。成功跳轉(zhuǎn)到 servlet中后,在get或post方法當(dāng)中獲取參數(shù),調(diào)用業(yè)務(wù)處理類的相丿始12關(guān)函數(shù)執(zhí)行數(shù)據(jù)庫操作
33、。系統(tǒng)的流程如圖4. 3所示:圖4. 3系統(tǒng)執(zhí)行流程圖4. 5. 3功能詳細(xì)執(zhí)行流程木程序主要實現(xiàn)四個大部分功能模塊,共九個子功能,分別通過在各類中調(diào)用和應(yīng)函數(shù) 貝體實現(xiàn)個操作,下而以開戶操作為例畫出執(zhí)行的貝體流程,其他操作流程與該流程圖基 木一致,開戶流程圖如圖4. 4所示。開始結(jié)集13圖4. 4開戶操作具體流程圖結(jié)束145調(diào)試分析(1) 插入中文問題問題描述:在數(shù)據(jù)庫中使用sql語句后,插入則顯示data too long ,無法正常插入。問題分析:數(shù)據(jù)庫中裁認(rèn)的是使用lantl的編碼格式,此格式卜-無法插入屮文,如插入,則顯示data too long;解決方法:在mysql的配置文件m
34、y. ini文件中把編碼方式改成gbk格式。(2) 參數(shù)獲得問題問題描述:無法獲得add_count. jsp中的參數(shù)。問題分析:在addcountaction +未加入?yún)?shù)的get、set方法。解決方法:在addcountaction 中增加具體的 getxxxo > setxxx()方法攔截獲取頁ifii傳遞的參數(shù)。(2)亂碼問題問題描述:在頁面上插入的屮文無法正常的插入數(shù)據(jù)庫屮,插入后在數(shù)據(jù)庫屮亂碼。問題分析:主要是因為數(shù)據(jù)庫中的編碼格式和頁面上的編碼格式不同。解決方法:action在獲取參數(shù)后,對參數(shù)進(jìn)行打散重新編碼,具體如:name = new string (name. ge
35、tbytes( ts08859t" ), ” utf-8”);其他方式相同。(4)空指針問題問題描述:后臺回報 java. lang. nullpointerexception問題分析:所引用的值是空引起的錯誤,值無法從jsp頁面?zhèn)鞯絘ction屮。解決方法:檢查jsp頁而,在withdraw, jsp中的輸入表單一項中加入id二” money”,使得參數(shù)無法 傳遞,加入代碼后實現(xiàn)正常。8 156測試及運(yùn)行結(jié)果6. 1登陸功能運(yùn)行程序后首先進(jìn)入登陸界而,輸入管理員名字和密碼后登陸成功,若密碼頁面實現(xiàn)如下:錯謀則返回重新背陸。登陸界面如圖6.1所示。圖6. 1登陸界而錄入代碼如下pub
36、lic boolean login(string userid, string password) boolean flag = false;connection corm 二 nul1; preparedstatement ps 二 null; resultset rs二null; string sql = "select * from manager where userid=? and password = try conn =this. getconnectiono ; ps = conn. preparestatement (sql) ; ps. setstring(l,
37、userid); ps. s et str in g(2, password) ; rs 二 ps. executequery () ; if (rs. next () flag 二 true; return flag; catch (exception e) e. printstacktraceo; finally try 16 rs. closeo ; ps. close() ; conn, close() ; catch (sqlexception e) e. printstacktraceo ; ret urn flag;6. 2主操作界面管理員登陸成功后,進(jìn)入用戶主頁面。進(jìn)行相應(yīng)操作
38、。主界而如圖6. 2所示。儲蓄管理系統(tǒng)賬尸信息管理信息統(tǒng)計用戶交易查詢圖6. 2系統(tǒng)主界而進(jìn)入主界面后,可進(jìn)行相應(yīng)操作,如儲戶的開戶操作,在相應(yīng)的對話框屮填入個人信息及密碼。在數(shù)據(jù)庫中相應(yīng)添加用戶信息。頁面如圖6. 3所示。17基本檔案卞添加信息圖6. 3用戶開戶界而添加用戶代碼如下public void addcount(string cid,string iden ,string name, string money , string password , string time)connection conn = null;preparedstatement ps = null;stri
39、ng sql = "insert into count (cid, iden, name, money, password, time) values (?, ?, ?, ?, ?, ?) " system, out. printin (name);try conn 二 this. getconnection ();ps = corm preparestatement (sql);ps. setstring(l, cid);ps. setstring (2, iden);ps. setstring (3, name);ps. setstring (4, money);ps.
40、 setstring (5, password);ps. setstring(6, time);int n = ps. executeupdate(); catch (exception e) e.printstacktracc(); finally try ps. close ();conn closeo ; catch (sqlexception e) e. printstacktracc ();18也可以通過輸入該用戶的儲戶編號對用戶進(jìn)行銷戶操作。同時在數(shù)據(jù)庫中刪除該用戶的 信息。具體頁而如圖6. 4所示。圖6. 4銷戸操作界面刪除川戶代碼如下public boolean delcoun
41、t(string cid) boolean flag 二false; connection conn 二 null; preparedstatement ps = null;string sql = "delete from count where cid二?"system, out. println(,zdelcount=z,+cid) ; conn 二 this. getcormection(); try ps 二 conn. prcparestatement (sql) ;/預(yù)編譯語句 ps. setstring(l, cid) ; int i = ps- execu
42、teupdate();/執(zhí)行語句 if (i != 0) flag = true; return flag; catch (sqlexception e) / todo auto-generated catch blocke. printstacktrace() ; try conn, close() ; ps. closeo ; catch (sqlexception e) / todo auto-generated catch block e.printstacktrace(); return flag; 19增加開戶銷戶記錄代碼如下public void addcountrecord(s
43、tring cid,string time,string temp) cormection conn = null; preparedstatement ps = null; string sql = "insert into count_record (cid, time, temp) values (?,?,?)"system, out .println("addcountrecord二+cid); try corm 二 this.getconnection(); ps 二 conn prepsreststement(sql) ; ps. setstringd
44、, cid) ; ps.setstring(2, time); ps.setstring(3, temp); int n 二 ps.executeupdate(); catch (exception e) e. printstacktrace(); finally try ps. close() ; conn, close(); catch (sqlexception e) e. printstacktrace (); 通過輸入儲戶編號以及存取款金額,対用戶實現(xiàn)存取款操作。存款界面如圖6. 5所示,取款界面如圖6. 6所示。illl!|l|圖6.5存款操作界面存款代碼如下public bool
45、ean deposit(string cid, string change) boolean flag = false; connection conn 二 null;20 preparedstatemcnt ps = null; string sql = ''update count set money二? where cid 二?; try conn 二 this.getconnection(); ps 二 conn. preparestatement(sql); ps. setstring(l, changc) ; ps. setstring(2, cid) ; int
46、i = ps. executeupdate() ; if (i != 0) flag = true; return flag; catch (exception e) e. printstacktraceo ; finally try ps. close() ; conn, close(); catch (sqlexception e) e-printstacktrace(); return flag;圖6. 6取款操作界面在進(jìn)行存款取款功能的時候,我們往往要先查詢一下用戶是否存在。檢查賬戶是否存 在代碼如下public string check (string cid) string mon
47、ey = "“; connection conn 二 nul1; preparedstatement ps = nul1; resultset rs=nul1;21 string sql = "select money from count where cid二?“; try conn 二 this. getconnecti()n(); ps 二 conn. preparestatement (sql) ; ps. setstring(l, cid); rs = ps. executequery () ; if (rs ncxt () money = rs. getstri
48、ng(money,z); system out. println(余額二+moncy) ; return money; catch (exception e) e. printstacktraceo ; finally try rs. close() ; ps. closeo ;conn, close() ; catch (sqlexception e) e. printstacktraceo ; return money;取款代碼如下public boolean withdraw(string cid, string change) boolean flag 二 false; connect
49、ion conn = null; preparedstatement ps = null; string sql = "update count set money二? where cid = ?; try conn = this. getconnectiono ; ps = conn. preparestatement(sql); ps. setstring(l, change); ps. setstring(2, cid) ; int i = ps.executeupdate(); if (i != 0) flag = true; return flag; catch (exce
50、ption e) e. printstacktmce() ;22 finally try ps. closeo ; connclose(); catch (sqlexception e) e.printstacktrace(); return flag;增加存款取款記錄代碼如下public void addcashrecord(string cid,string time, string temp, string money) connection conn 二 null; preparedstatement ps = null; string sql = "insert into
51、cash_record (cid, time, temp, money) values (?,?,?,?)“; system, out. println("addcountrecord二+cid); try conn 二 this.getconnectiono; ps = con n. preparestatement (sql) ; ps> setstringd, cid); ps. sets tring(2, time); ps. sctstring(3, temp); ps. setstring(4, money); int n = psexecuteupdate();
52、catch (exception e) e. printstacktraceo ; finally try ps. closeo ; corm, close() ; catch (sqlexception e) e. printstacktraceo ; 點擊今日信息統(tǒng)計按鈕可顯示今日交易信息,女口:開戶信息、銷戶信息以及存入和支岀 信息。點擊相應(yīng)按鈕可顯示在當(dāng)h內(nèi)相應(yīng)的交易記錄。信息統(tǒng)計界血如圖6. 7所示。23查詢當(dāng)口存取款記錄代碼如下public list<cash> cash (string time, string temp) liscash> list = new
53、 arraylist<cash>(); connection conn 二 null; preparedstatement ps 二 nul1; resultset rs = null; string sql = "select * from cash record where time like,/z+time +' and temp=? “; try conn = this. getconnectiono : ps = conn. preparestatement(sql); ps. setstring(l, temp); rs = ps.executeque
54、ry (); while(rs> next () cash cash = new cash () ; cash.setcid(rs.getstring("cid); cash settime(rs. getstring(/?timezz) ; cash. setmoney (rs. getstring("money"); list, add (cash) ; catch (except i on e) e. printstacktraceo ; fin ally try rs. close() ; ps. close() ; conn.close(); ca
55、tch (sqlexception e) e. printstacktraceo ; return list; 最后,還可以通過點擊“查看記錄”按鈕查看某一用戶在木銀行交易信息。查詢界面如 圖6. 8所示。24查詢具體用戶代碼如下public list<cash> search(string cid) listcash> list 二 new arraylist<cash>(); connection conn 二 null; preparedstatement ps 二 nul1; resultset rs = null; string sql = "'select * from cash record where cid=? “; try conn = this. getconnectiono; ps = conn preparestatement(sql);ps.setstring
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位用工合同協(xié)議書
- 北京快速處理協(xié)議書
- 合伙修房分層協(xié)議書
- 土地征用補(bǔ)償協(xié)議書
- 高級審計師的市場需求分析試題及答案
- 合伙開發(fā)山林協(xié)議書
- 商鋪垃圾收集協(xié)議書
- 雙方共同投標(biāo)協(xié)議書
- 咸寧吊車租賃協(xié)議書
- 商鋪權(quán)屬轉(zhuǎn)移協(xié)議書
- 中國生鐵行業(yè)發(fā)展現(xiàn)狀及市場前景分析預(yù)測報告
- 2025年保密教育線上培訓(xùn)考試試題及答案
- JJG 693-2011可燃?xì)怏w檢測報警器
- GB/T 22554-2010基于標(biāo)準(zhǔn)樣品的線性校準(zhǔn)
- 八項規(guī)定知識測試習(xí)題庫帶答案版(打印版)
- 操作系統(tǒng)-作業(yè)實驗1存儲管理
- 多學(xué)科診療糖尿病足病例分享
- 施工進(jìn)度計劃網(wǎng)絡(luò)圖、橫道圖
- 汽車起重機(jī)檢查及記錄表(月檢)
- 公司委托經(jīng)營協(xié)議
- 實用美學(xué)第九講飲食美學(xué)課件
評論
0/150
提交評論