程偲
一、緒論
(一)課題簡介
財務(wù)管理是企業(yè)管理活動中最重要的一環(huán),隨著社會信息量的與日俱增,人工管理公司財務(wù)顯然已經(jīng)跟不上社會的發(fā)展。因此,為了方便公司賬務(wù)的管理,需要有效的賬務(wù)管理軟件。
(二)系統(tǒng)概述
本系統(tǒng)使用的服務(wù)器為Tomcat服務(wù)器,使用MySql數(shù)據(jù)庫作為后臺,使用Dreamweaver和MyEclipse來開發(fā)前臺部分。
1.搭建JSP開發(fā)平臺
在JSP開發(fā)過程中,如果需要使用Java編寫的Java類(如JavaBeans,Servlets等),則還需要JDK等開發(fā)工具。
JDK和Tomcat安裝后,點擊【開始】,選擇【所有程序】->【Apache Tomcat 6.0】->【Monitor Tomcat】。開啟服務(wù)器。打開IE(或其它瀏覽器)。在地址欄輸入: http://localhost:8080。
二、概要設(shè)計
(一)總體設(shè)計
1.外部模塊設(shè)計
(1)登錄模塊:
輸入:用戶輸入用戶名和密碼
輸出:判斷用戶名和密碼是否匹配并跳轉(zhuǎn)到相應(yīng)界面
(2)賬本登記模塊:
輸入:填寫入賬單或出賬單的基本信息
輸出:判斷輸入的信息是否符合條件并顯示
三、詳細(xì)設(shè)計
(一)系統(tǒng)結(jié)構(gòu)
對于登陸同樣需要進(jìn)行數(shù)據(jù)庫設(shè)計,登陸模塊讀取用戶表的信息。將系統(tǒng)的操作人員劃分為兩類:普通用戶和超級用戶。
(二)登錄界面設(shè)計
1.輸入用戶名。
判斷輸入的用戶名是否存在,不存在提示重新輸入。用于登陸使用。
2.輸入密碼。
判斷密碼是否和用戶名相匹配,不匹配提示用戶重新輸入。用于登陸中輸入密碼。
3.對于用戶權(quán)限的判斷。
根據(jù)用戶信息表中的用戶等級進(jìn)行判斷。若為超級用戶,則擁有全部權(quán)限賬本登記、賬本查詢和資料維護(hù);若為普通用戶則只能進(jìn)行賬本登記、賬本查詢的操作。
(三)判斷用戶是否已經(jīng)登錄
在用戶進(jìn)行登陸時,必須判斷用戶是否已經(jīng)登陸。如果已經(jīng)登陸則不需要再次登陸,如果沒有登陸,則允許用戶進(jìn)行登陸。當(dāng)用戶單擊[登陸]按鈕時,首先會驗證用戶是否填寫信息,如果沒有填寫則提示用戶填寫,如果填寫了,則判斷用戶是合法用戶。判斷用戶是否已經(jīng)登錄的代碼放在頁面lgcheck.jsp 中。具體方法如下:若用戶輸入的用戶名和密碼相匹配,則聲明一個 session 變量;若用戶輸入的用戶名和密碼錯誤,則不聲明變量。在每個網(wǎng)頁中加入獲取session 變量的語句,通過判斷 session 變量的值的方法來判斷用戶是否登錄。
當(dāng)判斷一個用戶是否為合法用戶時,只需在數(shù)據(jù)庫中查詢出該用戶即可。如果查詢出該用戶,則說明用戶是存在的;如果查詢不出該用戶,則說明該用戶是不存在的。
若用戶登錄成功,給每個用戶一個session 變量,session用戶對象寄存在用戶瀏覽器里,如果在一定時間內(nèi)不進(jìn)行操作或者用戶關(guān)閉了瀏覽器進(jìn)程,系統(tǒng)會自動注銷該用戶。關(guān)鍵代碼:
session.setAttribute("name",rs.getString("username"));
若用戶未登錄,想訪問相關(guān)頁面,則會彈出提示登錄框“請先登錄!”
關(guān)鍵代碼:
在session生命周期內(nèi),可以使用session內(nèi)置對象對不同的用戶進(jìn)行頁面編程,這樣就能夠?qū)崿F(xiàn)不同用戶顯示不同的內(nèi)容。例如:當(dāng)用戶登陸后,會跳轉(zhuǎn)到一個個人界面,這個界面可能是通用界面,但是需要不同的用戶在當(dāng)前界面操作。
(四)主操作界面設(shè)計
主操作界面包括:登陸頁面能吸引用戶的眼球,良好的設(shè)計可以提高用戶的體驗。顯示歡迎信息,用戶可進(jìn)行的基本操作菜單(賬本登記、賬本查詢、資料維護(hù))。
主操作界面代碼在文件 op_head.jsp 中,其余頁面中使用
(五)自主式訪問控制的設(shè)置
Mysql的特權(quán)類型分兩種,分別是角色特權(quán)和數(shù)據(jù)庫對象特權(quán)。
1.角色授權(quán)與取消
GRANT<角色類型>[,<角色類型>]TO<用戶>[IDENTIFIED BY<口令>]
<角色類型>::=Connect︳Resource︳DBA
其中,connect表示該用戶可連接到DBMS,resource表示該用戶可訪問數(shù)據(jù)庫資源;DBA表示該用戶為數(shù)據(jù)庫管理員;IDENTIFIED BY用于為用戶設(shè)置一個初始口令。
取消命令如下:
REVOKE<角色類型>[,<角色類型>] FROM<用戶>
2.數(shù)據(jù)庫對象授權(quán)與取消
GRANT<特權(quán)>ON<表名>TO<授權(quán)者>[,<授權(quán)者>][WITH GRANT OPTION]
<特權(quán)>::=ALL PRIVILEGES ︳<操作>[,<操作>]
<操作>::=SELECT︳INSERT︳DELETE︳UPDATE[(<列表名>)]
<列表名>::=<列表名>[,<列名>]
<受權(quán)者>::=PUBLIC︳<列名>
其中,WITH GRANT OPTION表示得到授權(quán)的用戶,可將其獲得的權(quán)限轉(zhuǎn)授給其他用戶;ALL PRIVILEGES表示所有的操作權(quán)限;PUBLIC表示公共組用戶,新創(chuàng)建的用戶一般都?xì)w為PUBLIC組。
四、系統(tǒng)測試
(一)服務(wù)器測試
1.將自己編寫的網(wǎng)頁放在Tomcat安裝目錄下的webapps文件夾里。例如:
E:\Apache Software Foundation\Tomcat 6.0\webapps\bs 。bs是自己新建的文件夾。
2.點擊【開始】菜單,選擇【所有程序】->【Apache Tomcat
6.0】->【Monitor Tomcat】。任務(wù)欄右部彈出一個圖標(biāo) 。
此時服務(wù)器開始工作。
3.打開瀏覽器,在地址欄輸入http://localhost:8080 , 若能正常顯示Apache歡迎頁面,則測試成功。若不能正常顯示,檢查原因,重復(fù)前面的步驟,直到測試成功。另外,打開瀏覽器后,也可以在地址欄中輸入http://本機(jī)IP:8080 。同一個局域網(wǎng)段內(nèi)的其他主機(jī)可以在地址欄中用輸入http://本機(jī)IP:8080 的方法訪問。
(二)站點測試
1.點擊【開始】菜單,選擇【運行】。輸入 services.msc。打開服務(wù)對話框,啟動MySQL服務(wù)。從任務(wù)管理器中可以看到進(jìn)程中多了mysqld-nt.exe這一項。服務(wù)啟動成功。
2.打開瀏覽器,地址欄輸入http://localhost:8080/bs/login.htm,正常顯示登錄頁面,則測試成功。
(三)程序運行測試
用戶登陸系統(tǒng),登陸成功并顯示主操作界面。測試成功。