




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2008 屆本科生畢業(yè)論文(設(shè)計(jì)) 銀行發(fā)票管理系統(tǒng) 姓名葉乃寶 學(xué)號(hào) 20084070418 專業(yè)信息管理與信息系統(tǒng) 指導(dǎo)教師王健 2012 年 5 月 25 日 摘要 隨著中國(guó)加入世貿(mào)組織以來,中國(guó)市場(chǎng)完全允許境外的外資銀行進(jìn)入,國(guó)內(nèi)銀行面 臨著越來越大的壓力,提高金融服務(wù)質(zhì)量,成為銀行發(fā)展的重要挑戰(zhàn)之一,好的金融產(chǎn) 品已經(jīng)成為銀行發(fā)展的的重要基礎(chǔ),金融軟件成為最有力的 it 增長(zhǎng)點(diǎn)。隨著金融產(chǎn)品 的不斷發(fā)展,其不斷改變的業(yè)務(wù)需求也在發(fā)生著變化,如何面對(duì)著業(yè)務(wù)不斷擴(kuò)展不斷改 變,成為金融軟件行業(yè)面對(duì)的巨大挑戰(zhàn)。 銀行發(fā)票管理系統(tǒng)采用銀行普遍采用的 j2ee 架構(gòu),在傳統(tǒng)的 b/s 加構(gòu)基礎(chǔ)
2、上應(yīng)該 前端流行的 ajax 技術(shù)客戶端功能,通過預(yù)定義接口實(shí)現(xiàn)與銀行其它系統(tǒng)實(shí)現(xiàn)集成,結(jié) 合 j2ee 架構(gòu)的擴(kuò)展性及 spring 中的織入功能,完成其與綜合業(yè)務(wù)系統(tǒng)的無縫集成, 同時(shí)達(dá)到事務(wù)管理的目的,最終形成一個(gè)具備發(fā)票入庫,開具,匯總的一個(gè)綜合發(fā)票管 理平臺(tái)。 關(guān)鍵詞:j2ee;b/s;spring;發(fā)票管理;銀行 abstract with chinas accession to the world trade organization, china has completely allowed the foreign banks of outside to enter into
3、our market. domestic banks are facing increasing pressure.the one of important challenges of banks development is to improve the financial service quality. good financial products has become the important basis of the banks development and financial software has become the most powerful it growth po
4、int. with the continuous development of financial products, the changing business demand is also changing. how to face the business expanding and continually changing, become the great challenge of financial software industry. bank of invoice management system uses j2ee that is widely used,in the tr
5、aditional based on b/s structure with front popular ajax technology client function, through the predefined interface implementation intergrate with other bank systems. and combined with the j2ees scalability of the purchase and the springs organization function, complete with its comprehensive busi
6、ness system of seamless integration. at the same time to the purpose of the transaction management. finally formed an invoice management platform that could put in storage, issued a comprehensive summary of invoice. key words: j2ee,b/s,spring,invoice, bank 目目 錄錄 1 引言.1 2 系統(tǒng)分析.2 2.1 系統(tǒng)環(huán)境調(diào)查.2 2.2 系統(tǒng)可行
7、性研究.2 2.2.1 系統(tǒng)目標(biāo).2 2.2.2 系統(tǒng)邊界.2 2.3 系統(tǒng)詳細(xì)調(diào)查.2 2.3.1 發(fā)票業(yè)務(wù)流程分析.2 2.3.2 管理需求.3 2.3.3 良好的用戶界面.3 2.3.4 業(yè)務(wù)流程圖.3 2.4 系統(tǒng)邏輯模型提出.5 2.4.1 數(shù)據(jù)流程圖.5 3 系統(tǒng)設(shè)計(jì).7 3.1 系統(tǒng)環(huán)境.7 3.1.1 系統(tǒng)開發(fā)環(huán)境及平臺(tái) .7 3.1.2 系統(tǒng)運(yùn)行環(huán)境.7 3.1.3 系統(tǒng)技術(shù)簡(jiǎn)介.7 3.2 系統(tǒng)概要設(shè)計(jì).10 3.2.1 系統(tǒng)總體結(jié)構(gòu)圖.10 3.2.2 系統(tǒng) ipo 圖 .11 3.3 系統(tǒng)詳細(xì)設(shè)計(jì).12 3.3.1 系統(tǒng)部分 e-r 圖.12 3.3.2 數(shù)據(jù)庫設(shè)計(jì).1
8、2 3.3.3 用戶交互界面設(shè)計(jì).15 3.3.4 部分模塊配置.21 3.4 系統(tǒng)測(cè)試.23 結(jié) 論.24 參考文獻(xiàn) .25 致 謝.26 1 引引言言 發(fā)票是財(cái)務(wù)收支的法定憑證,是會(huì)計(jì)核算的原始憑證,是稅務(wù)稽查的重要依據(jù)。目 前許多企業(yè)中發(fā)票的管理及打印還是采用人工處理模式,不但效率低下,而且導(dǎo)致企業(yè) 的內(nèi)控存在風(fēng)險(xiǎn)。 本系統(tǒng)可以幫助提高發(fā)票管理效率,控制管理中存在的風(fēng)險(xiǎn)。 銀行發(fā)票管理信息系統(tǒng)會(huì)記錄每一張銷貨發(fā)票的狀態(tài)、流向以及開具在發(fā)票上的客 戶信息、貨品信息等各項(xiàng)主要信息內(nèi)容,直到發(fā)票存根的回收和存放,并能夠?qū)λ_具 發(fā)票進(jìn)行鳥瞰式的統(tǒng)計(jì)分析,實(shí)現(xiàn)橫向有效集成,縱向?qū)訉訚B透,為實(shí)現(xiàn)數(shù)
9、據(jù)統(tǒng)計(jì),以 及監(jiān)測(cè)發(fā)票的整個(gè)生命周期提供有力的保障,從而實(shí)現(xiàn)對(duì)發(fā)票進(jìn)行全生命周期管理的目 標(biāo)。發(fā)票管理人員也可以隨時(shí)查閱納入本系統(tǒng)管理的發(fā)票信息,監(jiān)控發(fā)票資源的使用情 況,跟蹤管理發(fā)票資源在整個(gè)生命周期內(nèi)的狀態(tài)變化,準(zhǔn)確掌握各個(gè)開票點(diǎn)的各類發(fā)票 使用情況,并以此為依據(jù)更好地對(duì)發(fā)票資源進(jìn)行管理。 2 系統(tǒng)分析 2.1 系系統(tǒng)統(tǒng)環(huán)環(huán)境境調(diào)調(diào)查查 系統(tǒng)環(huán)境初步調(diào)查主要采用方式:主要通過在網(wǎng)上查詢一些類似的銀行發(fā)票及票據(jù) 管理系統(tǒng)的需求情況,以及銀行機(jī)構(gòu)設(shè)置,了解他們的信息需求。經(jīng)網(wǎng)上查詢,了解到 類似農(nóng)村信息社的基本情況如下: 農(nóng)村信用合作社是銀行類金融機(jī)構(gòu),與其它銀行不同的是的構(gòu)成上是以由農(nóng)民入股
10、 組成,實(shí)行入股社員民主管理,主要為入股社員服務(wù)的合作金融組織,是經(jīng)中國(guó)人 民銀行依法批準(zhǔn)設(shè)立的合法金融機(jī)構(gòu)。信聯(lián)社與單個(gè)信用社的關(guān)系,就相當(dāng)于總行 與支行的關(guān)系。農(nóng)村信用社的管理權(quán)歸省政府,省政府又成立了省聯(lián)社,省聯(lián)社管 著縣聯(lián)社。 銀行可通過發(fā)票管理系統(tǒng)能夠?qū)λ_具發(fā)票進(jìn)行鳥瞰式的統(tǒng)計(jì)分析,實(shí)現(xiàn)橫向有 效集成,縱向?qū)訉訚B透,為實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì),以及監(jiān)測(cè)發(fā)票的整個(gè)生命周期提供有力的保 障,從而實(shí)現(xiàn)對(duì)發(fā)票進(jìn)行全生命周期管理的目標(biāo)。 2.2 系系統(tǒng)統(tǒng)可可行行性性研研究究 2.2.1 系統(tǒng)目標(biāo) 銀行發(fā)票管理部門可以通過發(fā)票管理系統(tǒng)可以方便地進(jìn)行發(fā)票的入庫操作,領(lǐng)用及 跟蹤,同時(shí)與其發(fā)生的經(jīng)濟(jì)業(yè)務(wù)關(guān)聯(lián),
11、可供財(cái)務(wù)人員及銷售人員進(jìn)行對(duì)照查閱。 2.2.2 系統(tǒng)邊界 銀行發(fā)票管理系統(tǒng)覆蓋了銀行發(fā)票所有相關(guān)的操作,包括相關(guān)不同類型發(fā)票的領(lǐng)用, 開具以及發(fā)票使用的統(tǒng)計(jì)報(bào)表生成。同時(shí)對(duì)于發(fā)票管理系統(tǒng)的權(quán)限設(shè)計(jì),用戶,操作員 的權(quán)限分配,機(jī)構(gòu)設(shè)置等。 2.3 系系統(tǒng)統(tǒng)詳詳細(xì)細(xì)調(diào)調(diào)查查 2.3.1 發(fā)票業(yè)務(wù)流程分析 發(fā)票入庫,出庫,在途,經(jīng)過領(lǐng)用的發(fā)票同步的綜合業(yè)務(wù)系統(tǒng)中去。同時(shí)在進(jìn)入入 庫,出庫時(shí)先進(jìn)行申請(qǐng)單的填寫,經(jīng)上級(jí)主管部門同意審批后方可進(jìn)行。同時(shí)可進(jìn)行發(fā) 票狀態(tài)的查詢,及其相關(guān)的業(yè)務(wù)。 2.3.2 管理需求 可以對(duì)機(jī)構(gòu)進(jìn)行自定義操作,形成樹狀結(jié)構(gòu)??梢赃M(jìn)行管理員的分配,及其對(duì)發(fā)票 管理中的增加,修
12、改,刪除,查詢等各個(gè)權(quán)限的設(shè)置。 2.3.3 良好的用戶界面 快速的反應(yīng)時(shí)間,方面部署和使用,易于掌握。 2.3.4 業(yè)務(wù)流程圖 對(duì)系統(tǒng)的詳細(xì)調(diào)查是指對(duì)原企業(yè)的業(yè)務(wù)流程的調(diào)查,以及對(duì)其信息的流動(dòng)作出適當(dāng) 的分析。通過業(yè)務(wù)流程圖來描述管理業(yè)務(wù)活動(dòng),進(jìn)行規(guī)范劃說明。 1登錄:用戶向操作員提供自己的信息,操作員通過查詢檔案,比對(duì)信息驗(yàn)證是否 能夠進(jìn)行相關(guān)操作。業(yè)務(wù)流程圖如圖 2-1 所示: 圖 2-1 用戶登錄業(yè)務(wù)流程示意圖 2操作員進(jìn)行添加職工信息 。業(yè)務(wù)流程圖如圖 2-2 所示: 圖 2-2 系統(tǒng)管理員創(chuàng)建系統(tǒng)職工業(yè)務(wù)流程示意圖 3管理員從職工中添加一些操作員用于操作管理發(fā)票。業(yè)務(wù)流程圖如圖 2
13、-3 所示: 圖 2-3 系統(tǒng)管理員創(chuàng)建操作員業(yè)務(wù)流程示意圖 4管理員添加部門信息,如果管理員有此權(quán)限添加,則可以進(jìn)行如上圖 2-3 中添加 職工信息的業(yè)務(wù)流程圖,同樣,管理員添加信用聯(lián)社分社等分支機(jī)構(gòu)也是如上業(yè)務(wù)流程 進(jìn)行。 5發(fā)票入庫管理:即經(jīng)庫管理員審批后進(jìn)行入庫操作,即輸入發(fā)票的起始編號(hào),結(jié) 束編號(hào),發(fā)票類型等來進(jìn)行發(fā)票的入庫。業(yè)務(wù)流程圖如圖 2-4 所示: 圖 2-4 系統(tǒng)管理員入庫業(yè)務(wù)流程示意圖 6發(fā)票領(lǐng)用:即當(dāng)發(fā)生經(jīng)濟(jì)業(yè)務(wù)時(shí),需要從庫管理員那里領(lǐng)取發(fā)票的行為,同時(shí)表 明經(jīng)濟(jì)業(yè)務(wù),金額等業(yè)務(wù)信息。業(yè)務(wù)流程圖如圖 2-5 所示: 圖 2-5 發(fā)票領(lǐng)用業(yè)務(wù)流程示意圖 2.4 系系統(tǒng)統(tǒng)邏
14、邏輯輯模模型型提提出出 2.4.1 數(shù)據(jù)流程圖 1用戶登錄:即用戶通過操作員的編號(hào),及其設(shè)定的密碼輸入后傳遞給后臺(tái)進(jìn)行驗(yàn) 證,通過比對(duì)賬號(hào)密碼信息,如果正確則返回主界面進(jìn)行操作,如果錯(cuò)誤,則返回登錄 界面重新進(jìn)行輸入驗(yàn)證。數(shù)據(jù)流圖如圖 2-6 所示: 圖 2-6 用戶登錄數(shù)據(jù)流程圖 2職工管理:即操作員登錄后先通過驗(yàn)證權(quán)限,然后進(jìn)行員工的添加,信息的修改, 刪除,查詢等操作。如果沒有此權(quán)限,則不能進(jìn)行操作。數(shù)據(jù)流圖如圖 2-7 所示: 圖 2-7 超級(jí)管理員添加職工信息數(shù)據(jù)流程圖 3操作員管理:超級(jí)管理員可以添加操作員,其中操作員是從職工中選擇的,然后 成為操作員,最后為操作員賦一定的權(quán)限操作
15、該系統(tǒng)。此部分涉及到操作員的啟用,添 加,修改,刪除(數(shù)據(jù)流圖同圖 2-6)。 4部門管理:對(duì)于銀行內(nèi)部的機(jī)構(gòu)可以進(jìn)行對(duì)應(yīng)的添加,修改,刪除等的管理,可 以方便的統(tǒng)計(jì)發(fā)票對(duì)應(yīng)的部門,操作員所在的部門(數(shù)據(jù)流圖同圖 2-6)。 5機(jī)構(gòu)管理:管理銀行內(nèi)部的省級(jí)聯(lián)社,縣聯(lián)社等機(jī)構(gòu)添加,修改等(數(shù)據(jù)流圖同 圖 2-6)。 6發(fā)票管理:發(fā)票的入庫,領(lǐng)用,根據(jù)入庫的發(fā)票開始結(jié)束編號(hào)進(jìn)行入庫操作,對(duì) 于領(lǐng)用流程,則根據(jù)經(jīng)濟(jì)業(yè)務(wù)信息填寫生成發(fā)票領(lǐng)用后的信息。數(shù)據(jù)流圖如圖 2-8 所示: 圖 2-8 管理員進(jìn)行發(fā)票領(lǐng)用,發(fā)票入庫數(shù)據(jù)流程圖 3 系系統(tǒng)統(tǒng)設(shè)設(shè)計(jì)計(jì) 3.1 系系統(tǒng)統(tǒng)環(huán)環(huán)境境 3.1.1 系統(tǒng)開發(fā)環(huán)境
16、及平臺(tái) 開發(fā)環(huán)境:microsoft windows7 開發(fā)環(huán)境要求:jdk1.6;jre6 開發(fā)工具:eclipse3.7;maven2 數(shù)據(jù)庫:oracle10g 中間件:tomcat6.0 開發(fā)語言:java; 開發(fā)框架:freemarker+struts2+spring3.0+mybatis3.0+guice 字符編碼:utf-8; 3.1.2 系統(tǒng)運(yùn)行環(huán)境 redhat 5 oracle10g weblogic10.3 3.1.3 系統(tǒng)技術(shù)簡(jiǎn)介 本系統(tǒng)主要是的計(jì)算機(jī)語言有 freemarker、javascript、css、java、ajax、jquery。下 面就其中幾項(xiàng)進(jìn)行介紹。
17、 1freemarker 介紹 freemarker 是一個(gè)模板引擎,一個(gè)基于模板生成文本輸出的通用工具,使用純 java 編寫,freemarker 被設(shè)計(jì)用來生成 html web 頁面,特別是基于 mvc 模式的應(yīng)用程 序,雖然 freemarker 具有一些編程的能力,但通常由 java 程序準(zhǔn)備要顯示的數(shù)據(jù),由 freemarker 生成頁面,通過模板顯示準(zhǔn)備的數(shù)據(jù),freemarker 不是一個(gè) web 應(yīng)用框架, 而適合作為 web 應(yīng)用框架一個(gè)組件,freemarker 與容器無關(guān),因?yàn)樗⒉恢?http 或 servlet;freemarker 同樣可以應(yīng)用于非 web 應(yīng)
18、用程序環(huán)境,freemarker 更適合作為 model2 框架(如 struts)的視圖組件,你也可以在模板中使用 jsp 標(biāo)記庫。 2ajax 介紹 ajax 即異步 javascript 和 xml,是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。 ajax 的核心是 javascript 對(duì)象 xmlhttprequest。該對(duì)象在 internet explorer 5 中首次引入, 它是一種支持異步請(qǐng)求的技術(shù)。簡(jiǎn)而言之,xmlhttprequest 使您可以使用 javascript 向 服務(wù)器提出請(qǐng)求并處理響應(yīng),而不阻塞用戶。ajax 技術(shù)之主要目的在于局部交換客戶 端及服務(wù)器之間的數(shù)
19、據(jù)。ajax 在瀏覽器與 web 服務(wù)器之間使用異步數(shù)據(jù)傳輸(http 請(qǐng)求),這樣就可使網(wǎng)頁從服務(wù)器請(qǐng)求少量的信息,而不是整個(gè)頁面。通過 ajax,因 特網(wǎng)應(yīng)用程序可以變得更完善,更友好。 3jquery 框架介紹 對(duì)于 web 前端開發(fā)來說,越來越多人使用 js 框架來實(shí)現(xiàn)效果,其中以 jquery 框架 的使用最普遍。jquery 是一種讓開發(fā)和設(shè)計(jì)者在他們的網(wǎng)頁中添加交互內(nèi)容的工具,它 的核心命令讓你在網(wǎng)頁中定位或創(chuàng)建對(duì)象并對(duì)之進(jìn)行操作,它事實(shí)上是一種更容易使用 的 javascript,可以不必強(qiáng)迫頁面刷新而對(duì)頁面進(jìn)行各種操作。 4guice 介紹 guice 是 google 開發(fā)
20、的一個(gè)輕量級(jí),基于 java5(主要運(yùn)用泛型與注釋特性)的依 賴注入框架(ioc)。guice 非常小而且快。guice 是類型安全的,它能夠?qū)?gòu)造函數(shù),屬 性,方法(包含任意個(gè)參數(shù)的任意方法,而不僅僅是 setter 方法)進(jìn)行注入。guice 簡(jiǎn)單 超輕量級(jí)的 di 框架效率是 spring 的 100 倍,spring 使用 xml 使用將類與類之間的關(guān) 系隔離到 xml 中,由容器負(fù)責(zé)注入被調(diào)用的對(duì)象,而 guice 將類與類之間的關(guān)系隔離到 module 中,聲名何處需要注入,由容器根據(jù) module 里的描述,注入被調(diào)用的對(duì)象,使 用 annotation 使用支持自定義 anno
21、tation 標(biāo)注,對(duì)于相同的接口定義的對(duì)象引用,為它 們標(biāo)注上不同的自定義 annotation 注釋,就可以達(dá)到同一個(gè)類里邊的同一個(gè)接口的引用, 注射給不同的實(shí)現(xiàn),在 module 里用標(biāo)注做區(qū)分,靈活性大大增加。 5mybatis 介紹 mybatis 的前身就是 ibatis 。是一個(gè)數(shù)據(jù)持久層框架。mybatis 是支持普通 sql 查 詢,存儲(chǔ)過程和高級(jí)映射的優(yōu)秀持久層框架。mybatis 消除了幾乎所有的 jdbc 代碼和 參數(shù)的手工設(shè)置以及結(jié)果集的檢索。mybatis 使用簡(jiǎn)單的 xml 或注解用于配置和原始 映射,將接口和 java 的 pojos(plain old jav
22、a objects,普通的 java 對(duì)象)映射成數(shù)據(jù) 庫中的記錄。每個(gè) mybatis 應(yīng)用程序主要都是使用 sqlsessionfactory 實(shí)例的,一個(gè) sqlsessionfactory 實(shí)例可以通過 sqlsessionfactorybuilder 獲得。sqlsessionfactorybuilder 可以從一個(gè) xml 配置文件或者一個(gè)預(yù)定義的配置類的實(shí)例獲得。用 xml 文件構(gòu)建 sqlsessionfactory 實(shí)例是非常簡(jiǎn)單的事情。推薦在這個(gè)配置中使用類路徑資源 (classpath resource),但你可以使用任何 reader 實(shí)例,包括用文件路徑或 file:
23、/開頭的 url 創(chuàng)建的實(shí)例。mybatis 有一個(gè)實(shí)用類 resources,它有很多方法,可以方便地從類路 徑及其它位置加載資源。 6struts2 介紹 struts2 的簡(jiǎn)單處理流程如下:瀏覽器發(fā)送請(qǐng)求中心處理器根據(jù) struts.xml 文件查找 對(duì)應(yīng)的處理請(qǐng)求的 action,webwork 的攔截器鏈自動(dòng)對(duì)請(qǐng)求應(yīng)用通用功能,如果 struts.xml 文件中配置 method 參數(shù),則調(diào)用 method 參數(shù)對(duì)應(yīng)的 action 類中的 method 方法,否則調(diào)用通用的 execute 方法來處理用戶請(qǐng)求,將 action 類中的對(duì)應(yīng)方法返回的 結(jié)果響應(yīng)給瀏覽器,其在 mvc
24、模式中起到的作用是 control 的作用,即控制。 7maven2 工具 對(duì)第三方依賴庫進(jìn)行統(tǒng)一的版本管理。只要用了 maven2 就不用再為每個(gè)項(xiàng)目復(fù)制 spring.jar 和 hibernate.jar 了,maven2 會(huì)在你需要的時(shí)候,自動(dòng)把這些第三方依賴庫找到, 你需要編譯,maven2 就把這些 jar 包放到 classpath 里,你需要打包,maven2 就幫你把 需要的 jar 包都復(fù)制到 web- inf/lib/目錄下。統(tǒng)一項(xiàng)目的目錄結(jié)構(gòu)??梢员WC所有項(xiàng)目 的目錄結(jié)構(gòu)都是一樣的,目錄結(jié)構(gòu)統(tǒng)一的好處就是,你要找源代碼就去 src/main/java/下, 你要找需要放
25、到 classpath 下的資源,就去 src/main/resources/下,你要找單元測(cè)試對(duì)應(yīng)的 代碼和資源,就去 src/test/下。每個(gè)目錄下放什么東西,程序編譯,發(fā)布的時(shí)候,每個(gè) 目錄起什么作用都很清楚明了,不會(huì)出現(xiàn)打開項(xiàng)目找不到要找的文件的情況。統(tǒng)一軟件 構(gòu)建階段 maven2 把軟件開發(fā)的過程劃分成了幾個(gè)經(jīng)典階段,比如你先要生成一些 java 代碼,再把這些代碼復(fù)制到特定位置,然后編譯代碼,復(fù)制需要放到 classpath 下的資 源,再進(jìn)行單元測(cè)試,單元測(cè)試都通過了才能進(jìn)行打包,發(fā)布。以前使用 ant,最令人 頭疼的就是要為不同的項(xiàng)目寫很多 build.xml 腳本,而且這
26、些腳本還不太通用,現(xiàn)在我 們可以使用 maven2 提供的這些經(jīng)典構(gòu)建階段,讓每個(gè)項(xiàng)目就經(jīng)過相同的步驟,從源代 碼一步一步變成可以部署的成品。如果想要什么附加功能,把對(duì)應(yīng)的插件綁定到一個(gè)構(gòu) 建階段上,那么到了執(zhí)行這個(gè)構(gòu)建階段的時(shí)候,就會(huì)執(zhí)行綁定的插件了。支持多種插件 在 http:/ /上可以找到大量的 maven2 插件, 通過這些插件可以完成多種多樣的擴(kuò)展功能。不過,如果比插件的易用性,ant 的插件 實(shí)際上更簡(jiǎn)單方便,與之相比,在 maven2 中配置插件的步驟太復(fù)雜了,既要配置 groupid 和 artifactid,還要配置綁定在哪個(gè)階
27、段運(yùn)行。不過因?yàn)?maven2 可以把插件連同 第三方依賴一起進(jìn)行統(tǒng)一版本管理,所以這方面也算比 ant 有一點(diǎn)兒優(yōu)勢(shì),至少使用時(shí) 不需要自己再去下載插件的發(fā)布包了。 8weblogic 服務(wù)器 bea weblogic server 是專門為企業(yè)電子商務(wù)應(yīng)用系統(tǒng)開發(fā)的。企業(yè)電子商務(wù)應(yīng)用 系統(tǒng)需要快速開發(fā),并要求服務(wù)器端組件具有良好的靈活性和安全性,同時(shí)還要支持關(guān) 鍵任務(wù)所必需的擴(kuò)展、性能、和高可用性。bea weblogic server 簡(jiǎn)化了可移植及可擴(kuò) 展的應(yīng)用系統(tǒng)的開發(fā),并為其它應(yīng)用 系統(tǒng)和系統(tǒng)提供了豐富的互操作性。憑借其出色 的群集技術(shù),bea weblogic server 擁有
28、最高水平的可擴(kuò)展 性和可用性。bea weblogic server 既實(shí)現(xiàn)了網(wǎng)頁群集,也實(shí)現(xiàn)了 ejb 組件 群集,而且不需要任何專門的 硬件或操作系統(tǒng)支持。網(wǎng)頁群集可以實(shí)現(xiàn)透明的復(fù)制、負(fù)載平衡以及表示內(nèi)容容錯(cuò),如 web 購(gòu)物車;組件群集則處理復(fù)雜的復(fù)制、負(fù)載平衡和 ejb 組件容錯(cuò),以及狀態(tài)對(duì)象 (如 ejb 實(shí)體)的恢復(fù)。無論是網(wǎng)頁群集,還是組件群集,對(duì)于電子商務(wù)解決方案所 要求的可擴(kuò)展性和可用性都是至關(guān)重要的。共享的客戶機(jī)/服務(wù)器和數(shù)據(jù)庫連接以及數(shù) 據(jù)緩存和 ejb 都增強(qiáng)了性能表現(xiàn)。這是其它 web 應(yīng)用系統(tǒng)所不具備的。 3.2 系系統(tǒng)統(tǒng)概概要要設(shè)設(shè)計(jì)計(jì) 3.2.1 系統(tǒng)總體結(jié)構(gòu)圖
29、 根據(jù)系統(tǒng)分的結(jié)果,按照結(jié)構(gòu)化的系統(tǒng)設(shè)計(jì)方法,發(fā)票管理信息系統(tǒng)從功能上可做 如下的子模塊劃分以 h 圖如圖 3-1 所示: 圖 3-1 系統(tǒng)功能模塊圖 3.2.2 系統(tǒng) ipo 圖 1用戶登錄ipo圖如圖3-2所示: 系統(tǒng)名:銀行發(fā)票管理系統(tǒng)制圖者:yenaibao ipo圖 日 期:模塊名:用戶登錄 由下列模塊調(diào)用:管理員及 操作員登錄 調(diào)用下列模塊: 輸入:用戶名,密碼 處理內(nèi)容:根據(jù)輸入的內(nèi)容,判斷用戶名密碼是否正確,查詢操作 員表進(jìn)行驗(yàn)證 輸出:用戶管理界面 內(nèi)部數(shù)據(jù)元素: 備注: 圖 3-2 用戶管理模塊輸入輸出圖 2發(fā)票管理 ipo 圖如圖 3-3 所示: 系統(tǒng)名:銀行發(fā)票管理系統(tǒng)
30、制圖者:yenaibao ipo圖 日 期:模塊名:發(fā)票管理 由下列模塊調(diào)用:職工信息添加, 修改,刪除 調(diào)用下列模塊: 輸入:發(fā)票起始編號(hào),結(jié)束號(hào), 發(fā)票類型(普通,專用) 處理內(nèi)容:根據(jù)輸入 的開始結(jié)束編號(hào)及類型自動(dòng)生成發(fā)票信息,即 為入庫操作,當(dāng)領(lǐng)用時(shí),對(duì)其發(fā)票狀態(tài)進(jìn)行修改,同時(shí)關(guān)聯(lián)其具體 交易事項(xiàng),當(dāng)操作為匯總發(fā)票時(shí),可以根據(jù)發(fā)生變易時(shí)間進(jìn)行統(tǒng)計(jì), 也可根據(jù)發(fā)票類型,交易類型進(jìn)行統(tǒng)計(jì)。 輸出:操作結(jié)果信息 圖 3-3 發(fā)票管理模塊輸入輸出圖 3.3 系系統(tǒng)統(tǒng)詳詳細(xì)細(xì)設(shè)設(shè)計(jì)計(jì) 3.3.1 系統(tǒng)部分 e-r 圖 包括 職工,部門,機(jī)構(gòu),操作員,發(fā)票,發(fā)票類型。如圖 3-4 所示: 職工表
31、狀態(tài) 員工編號(hào) 證件類型 證件編號(hào) 描述 銀行卡號(hào) 機(jī)構(gòu)編號(hào) 部門編號(hào)備注 部門 部門編號(hào) 部門名稱上級(jí)聯(lián)社 所屬機(jī)構(gòu)名稱 狀態(tài) 部門管理人員 電話 部門管理人員 姓名 備注 擁有 1 m 發(fā)票 發(fā)票編號(hào) 發(fā)票代碼 發(fā)票類型名稱 交易事項(xiàng) 交易時(shí)間 交易價(jià)格 信息碼 企業(yè)名稱 發(fā)票類型 發(fā)票類型 發(fā)票類型編號(hào) 屬于 1 1 圖 3-4 系統(tǒng)部分 er 圖 3.3.2 數(shù)據(jù)庫設(shè)計(jì) 1系統(tǒng)表結(jié)構(gòu)關(guān)系圖,如圖 3-5 所示: 圖 3-5 系統(tǒng)表結(jié)構(gòu)關(guān)系圖 2表結(jié)構(gòu)如下: 表 3-1 為員工信息表,存儲(chǔ)著員工的基本信息。 表 3-1 員工信息表 列名數(shù)據(jù)類型長(zhǎng)度是否為空注釋 staff_idvarch
32、ar236 否標(biāo)識(shí) staff_novarchar236 否編號(hào) id_typevarchar236 否證件類型 id_novarchar236 否證件編號(hào) descvarchar260 是職位描述 credit_novarchar220 否借記卡編號(hào) org_novarchar236 否機(jī)構(gòu)編號(hào) dep_novarchar236 否部門編號(hào) statusvarchar22 否狀態(tài) filtervarchar2100 是備注 表 3-2 為操作員表,存儲(chǔ)著操作員基礎(chǔ)信息表。 表 3-2 操作員表 名稱類型長(zhǎng)度是否為空注釋 oper_idvarchar236 否標(biāo)識(shí) oper_novarchar
33、236 否操作員編號(hào) org_novarchar236 否機(jī)構(gòu)編號(hào) dep_novarchar236 否部門編號(hào) staff_novarchar236 否職工編號(hào) passwordvarchar236 否密碼 表 3-3 為部門表,存儲(chǔ)著部門基礎(chǔ)信息表。 表 3-3 部門表 名稱類型長(zhǎng)度是否為空注釋 dep_idvarhcar236 否標(biāo)識(shí) dep_novarhcar236 否編號(hào) namevarhcar220 是名稱 up_dep_novarhcar236 否上級(jí)聯(lián)社編號(hào) org_novarhcar236 否機(jī)構(gòu)編號(hào) mangervarhcar220 是管理者姓名 phonevarhcar2
34、12 是電話 statusvarhcar22 否狀態(tài) fillervarhcar2100 是備注 表 3-4 為組織機(jī)構(gòu)表,存儲(chǔ)著組織機(jī)構(gòu)基礎(chǔ)信息表。 表 3-4 組織機(jī)構(gòu)表 org_idvarhcar236 否標(biāo)識(shí) org_namevarhcar220 是機(jī)構(gòu)名稱 org_novarhcar236 否機(jī)構(gòu)編號(hào) org_placevarhcar220 是機(jī)構(gòu)所在地址 fillervarhcar2100 是備注 表 3-5 為發(fā)票表,存儲(chǔ)著發(fā)票基礎(chǔ)信息表。 表 3-5 發(fā)票表 名稱類型長(zhǎng)度是否為空注釋 invoice_idvarhcar236 否標(biāo)識(shí) invoice_novarhcar236 否
35、發(fā)票編號(hào) invoice_codevarhcar220 否發(fā)票代碼 invoice_infocodevarhcar220 否發(fā)票信息代碼 invoice_companyvarhcar220 是開票機(jī)構(gòu) invoice_priceint5 否發(fā)票金額 invoice_datavarhcar215 是開票日期 invoice_goodsvarhcar220 是發(fā)票交易事件 invoice_statevarhcar22 否發(fā)票狀態(tài) invoice_oper_idvarhcar236 否發(fā)票操作員 3.3.3 用戶交互界面設(shè)計(jì) 1用戶登錄頁面: 如圖 3-6 表示的是操作員登錄界面圖 圖 3-6 用戶
36、登錄界面圖 通過輸入用戶名,密碼,對(duì)于密碼進(jìn)行 md5 加密碼對(duì)數(shù)據(jù)庫進(jìn)行查詢,如果結(jié)果 數(shù)量大于 0,則為正確,即為驗(yàn)證通過,跳轉(zhuǎn)到首頁。如果不相同,則驗(yàn)證實(shí)現(xiàn)給出提 示信息,其具體實(shí)現(xiàn)代碼如下,其中“operation.validate”為相應(yīng)的 mybatis 對(duì)應(yīng)的 sqlid,調(diào)用 mybatis 接口進(jìn)行查詢。 /* * 驗(yàn)證用戶信息 * param operno * param password * return */ public static boolean validate(final string operno,final string password) suppres
37、swarnings(serial) int count=servicecontext. get(generalmanager.class).querydata(operation.validate, new hashmap() put(operno, operno); put(password, password); ); if(count0) return true; return false; 2職工管理界面 如圖 3-7 表示的是職工管理界面圖 圖 3-7 職工管理界面圖 對(duì)于職工信息進(jìn)行增刪改,點(diǎn)擊創(chuàng)建彈出創(chuàng)建職工信息框,進(jìn)行輸入對(duì)應(yīng)的職工的 信息,點(diǎn)擊 ok 進(jìn)行保存,其具體實(shí)現(xiàn)代碼
38、如下:雙擊某一行,即選中某行的職工進(jìn)行 查詢 getstaff方法,然后跳出編輯界面。點(diǎn)擊保存時(shí),即進(jìn)行 add 操作,如果其 id 不為 空,則即為更新,如果為空,則進(jìn)行保存操作。點(diǎn)擊刪除按鈕時(shí),則進(jìn)行 delete 操作, 根據(jù) id 刪除一條記錄。 查詢某個(gè)職工 public staff getstaff(final string id) throws managerexception return (staff) this.strategy.querylist(query.staff,new hashedmap() put(id, id); ).get(0); 添加職工信息 publi
39、c staff addstaff(staff staff) / todo auto-generated method stub / todo auto-generated method stub staff.setid(uuidgenerator.create(); this.strategy.insert(insert.staff, staff); return staff; 更新職工信息 public staff updatestaff(staff staff) throws managerexception try this.strategy.update(update.staff, s
40、taff); catch (managerexception e) / todo auto-generated catch block e.printstacktrace(); throw e; return staff; 刪除職工信息 public void deletestaff(final string id) throws managerexception / todo auto-generated method stub / todo auto-generated method stub this.strategy.delete(delete.staff, new hashmap()
41、 put(id, id); ); 3部門管理界面 如圖 3-8 表示的是部門管理界面圖 圖 3-8 部門管理界面圖 對(duì)于部門信息進(jìn)行增刪改,點(diǎn)擊創(chuàng)建彈出創(chuàng)建部門信息框,進(jìn)行輸入對(duì)應(yīng)的部門的 信息,點(diǎn)擊 ok 進(jìn)行保存,其具體實(shí)現(xiàn)代碼如下:雙擊某一行,即選中某行的部門進(jìn)行 查詢 getdepartment方法,然后跳出編輯界面。點(diǎn)擊保存時(shí),即進(jìn)行 add 操作,如果其 id 不為空,則即為更新,如果為空,則進(jìn)行保存操作。點(diǎn)擊刪除按鈕時(shí),則進(jìn)行 delete 操作,根據(jù) id 刪除一條記錄。 獲取部門信息 public department getdepartment(final string i
42、d) throws managerexception return (department) this.strategy.querylist(query.department, new hashedmap() put(id, id); ).get(0); 添加部門信息 public department adddepartment(department department) department.setid(uuidgenerator.create(); this.strategy.insert(insert.department, department); return departmen
43、t; 更新部門信息 public department updatedepartment(department department) throws managerexception this.strategy.update(update.department, department); return department; 根據(jù)部門id刪除部門信息 public void deletedepartment(final string id) throws managerexception this.strategy.delete(delete.department, new hashmap()
44、 put(id, id); 4操作員管理界面 如圖 3-9 表示的是操作員管理界面圖 圖 3-9 操作員管理界面圖 對(duì)于操作員信息進(jìn)行管理,其中對(duì)于操作員的創(chuàng)建,其是從職工中進(jìn)行選擇,維持 著一個(gè)與職工表的關(guān)聯(lián),同時(shí)對(duì)其賦于密碼,以便其進(jìn)行系統(tǒng)的登錄及管理。 獲取操作員信息,以便用于修改 public operator getoperation(final string id) throws managerexception return (operator) this.strategy.querylist(query.operation, new hashedmap() put(id, id
45、); ).get(0); 添加操作員信息 public operator addoperation(operator operator) operator.setid(uuidgenerator.create(); operator.setpassword(passwordutil.encodepassword(operator.getpassword(),md5); this.strategy.insert(insert.operation, operator); return operator; 修改操作員信息(對(duì)密碼進(jìn)行md5加密) public operator updateopera
46、tion(operator operator) throws managerexception operator.setpassword(passwordutil.encodepassword(operator.getpassword(),md5); this.strategy.update(update.operation, operator); return operator; 根據(jù)標(biāo)識(shí)刪除操作員信息 public void deleteoperation(final string id) throws managerexception this.strategy.delete(delet
47、e.operation, new hashmap() put(id, id); ); 5發(fā)票管理界面 如圖 3-10 表示的是發(fā)票管理界面圖 圖 3-10 發(fā)票管理界面圖 根據(jù)標(biāo)識(shí)獲取發(fā)票信息 public invoice getinvoice(final string id) throws managerexception return (invoice) this.strategy.querylist(query.invoice, new hashedmap() put(id, id); ).get(0); 發(fā)票入庫,即根據(jù)發(fā)票的開始編號(hào),結(jié)束編號(hào)循環(huán)插入發(fā)票信息 public invoi
48、ce addinvoice(invoice invoice,int startno,int endno) for(int i=startno;i=endno;i+) invoice invoice2 = new invoice(); invoice2.setid(uuidgenerator.create(); invoice2.setcompany(invoice.getcompany(); invoice2.setstate(0); invoice2.setinvoicetype(invoice.getinvoicetype(); this.strategy.insert(insert.in
49、voice, invoice2); return invoice; 發(fā)票領(lǐng)用,即完善發(fā)票使用信息,修改發(fā)票狀態(tài) public invoice updateinvoice(invoice invoice) throws managerexception invoice.setstate(1); try this.strategy.update(update.invoice, invoice); catch (managerexception e) / todo auto-generated catch block e.printstacktrace(); throw e; return invo
50、ice; 根據(jù)id刪除一條發(fā)票信息 public void deleteinvoice(final string id) throws managerexception this.strategy.delete(delete.invoice, new hashmap() put(id, id); ); 3.3.4 部分模塊配置 1職工配置代碼 通過guice注入實(shí)現(xiàn)類,達(dá)到解耦合的目的 mybatis對(duì)應(yīng)的sql語句如下: 查詢職工信息 select s.staff_id,s.staff_no,s.id_type,s.id_no,s.description, s.credit_no,s.sta
51、tus,s.filler, _id,_no,, d.dep_id,d.dep_no, from bank_staff s,bank_org o,bank_department d where _no = _id and s.dep_no=d.dep_id and s.staff_id=#id 插入職工信息 insert into bank_staff values(#id,#staffno,#idtype,#idno,#des ,#creditno,#orgnization.id,#department.id,#status,#f
52、iller ) 更新信息 update bank_staff set staff_no = #staffno, id_type=#idtype,filler=#filler,id_no=#idno ,description=#des,credit_no=#creditno,status=#status, org_no=#orgnization.id,dep_no=#department.id where staff_id = #id 刪除職工信息 delete from bank_staff where staff_id = #id 2發(fā)票配置代碼 guice注入代碼: mybatis對(duì)應(yīng)的sql代碼 查詢發(fā)票 select invoice_id,invoice_no,invoice_code,invoice_infocode, invoice_price,invoice
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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)村項(xiàng)目可行性研究報(bào)告
- 家居智能語音
- 農(nóng)業(yè)產(chǎn)業(yè)鏈管理手冊(cè)
- 市場(chǎng)調(diào)研報(bào)告細(xì)分行業(yè)統(tǒng)計(jì)表
- 能源產(chǎn)業(yè)項(xiàng)目進(jìn)度跟蹤表
- 腫瘤內(nèi)科胃癌練習(xí)試題及答案
- 智能安防設(shè)備技術(shù)及應(yīng)用場(chǎng)景探索
- 會(huì)展業(yè)活動(dòng)策劃與執(zhí)行指南
- 主管護(hù)師內(nèi)科護(hù)理復(fù)習(xí)測(cè)試附答案
- 財(cái)務(wù)會(huì)計(jì)實(shí)操指南
- 上海中考英語試卷及答案版
- ChatGPT會(huì)影響到人類社會(huì)嗎(2023年四川涼山中考語文試卷說明文閱讀題及答案)
- 2025年廣東汕頭高三數(shù)學(xué)試題下學(xué)期一模預(yù)考試題含解析
- 光伏電站工程施工組織設(shè)計(jì)方案
- DL∕T 2609-2023 主動(dòng)干預(yù)型消弧裝置驗(yàn)收運(yùn)維規(guī)范
- DZ∕T 0211-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 重晶石、毒重石、螢石、硼(正式版)
- 中國(guó)居民營(yíng)養(yǎng)與健康狀況調(diào)查報(bào)告
- 人體成分分析適應(yīng)癥禁忌癥
- 2024年廣東廣州黃埔區(qū)長(zhǎng)嶺街道森林消防護(hù)林員招聘筆試沖刺題(帶答案解析)
- 2024年云南呈貢區(qū)城市投資集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 第2課中華文化的世界意義教學(xué)設(shè)計(jì)-高中歷史選擇性必修3文化交流與傳播
評(píng)論
0/150
提交評(píng)論