java swing 组织机构_课内资源 - 基于Java Swing的小型社团成员管理系统
一、需求分析
1.1 個人信息
學(xué)號、姓名、性別、年級、系別、專業(yè)、出生日期、聯(lián)系方式、個性簽名、地址、照片。
1.2 基本功能要求管理員信息管理
登錄、注銷功能
修改密碼功能
部落成員信息管理
添加成員
刪除成員
修改成員信息
按條件查找篩選成員
1.3 高級特性管理員權(quán)限管理
成員信息包含照片
連接數(shù)據(jù)庫性能的優(yōu)化,比如:Connection
二、詳細(xì)設(shè)計(jì)
2.1 數(shù)據(jù)庫設(shè)計(jì)字段名
字段描述
數(shù)據(jù)類型
備注
psw
密碼
nvarchar(30)
不為空
idNumber
學(xué)號
char(9)
主鍵
name
姓名
nvarchar(10)
不為空
sex
性別
char(2)
不為空
grade
年級
nvarchar(10)
不為空
dept
性別
nvarchar(30)
不為空
major
專業(yè)
nvarchar(30)
不為空
iden
身份
nvarchar(20)
不為空
born
出生日期
datetime
phone
聯(lián)系方式
char(11)
pSignature
個性簽名
nvarchar(50)
pAddress
地址
nvarchar(50)
picture
照片
nvarchar(150)
sql建表語句
create tablePersonInfo(
psw nvarchar(30)notnull,
idNumberchar(9)notnullprimary key,
name nvarchar(10)notnull,
sexchar(2)notnull,
grade nvarchar(10)notnull,
dept nvarchar(30)notnull,
major nvarchar(30)notnull,
iden nvarchar(20)notnull,
born datetimenull,
phonechar(11)null,
pSignature nvarchar(50)null,
pAddress nvarchar(50)null,
picture nvarchar(150)null
)
2.2 界面設(shè)計(jì)
登陸界面
主界面
修改密碼
查詢信息
修改信息
刪除信息
2.3 分 包
2.3.1 視圖層包View
2.3.2 控制層包Control
2.3.3 模型層包Model
2.4 分類
2.4.1 視圖層類LoginView.java登錄界面設(shè)計(jì)類
InfoManagerView.java信息管理系統(tǒng)主界面設(shè)計(jì)類
InfoPanel.java信息面板設(shè)計(jì)類
InfoSelectPanel.java查詢信息面板設(shè)計(jì)類
InfoInsertPanel.java添加信息面板設(shè)計(jì)類
InfoUpdatePanel.java修改信息面板設(shè)計(jì)類
InfoDelPanel.java刪除信息面板設(shè)計(jì)類
UpdatePasswordPanel.java修改密碼面板設(shè)計(jì)類
2.4.2 控制層類InfoManager_01.java信息管理系統(tǒng)主類
LoginActEvents.java登錄界面動作事件類
InfoManagerActEvents.java信息管理系統(tǒng)主界面動作事件類
InfoSelActEvents.java查詢信息面板動作事件類
InfoInsActEvents.java添加信息面板動作事件類
InfoUpdActEvents.java修改信息面板動作事件類
InfoDelActEvents.java刪除信息面板動作事件類
UpdPswActEvents.java修改密碼面板動作事件類
ListSelEvents.java列表框選項(xiàng)事件類
2.4.3 模型層類Constants.java sql server數(shù)據(jù)庫連接信息
DBUtil.java連接數(shù)據(jù)庫操作類
DaoPattern.java操作數(shù)據(jù)庫信息功能類(底層模型類)
InfoSelect.Java查詢數(shù)據(jù)庫信息類(業(yè)務(wù)邏輯處理類)
InfoUpdate.java更新數(shù)據(jù)庫信息類(業(yè)務(wù)邏輯處理類)
三、開發(fā)實(shí)現(xiàn)
3.1 開發(fā)說明開發(fā)環(huán)境:eclipse
數(shù)據(jù)庫:sql server 2008
項(xiàng)目UI界面使用eclipse的windowBuilder插件來設(shè)計(jì)
使用JDBC方式連接數(shù)據(jù)庫
信息管理系統(tǒng)所涉及到的照片信息的處理,在項(xiàng)目路徑下開一個文件夾picture,用來存儲成員的照片信息,而在數(shù)據(jù)庫中存儲的是對應(yīng)照片的路徑。
使用mvc模式,按照功能和類型分類分包,使結(jié)構(gòu)清晰。
提高系統(tǒng)安全性,系統(tǒng)要登錄成功才能操作,對數(shù)據(jù)的增刪改只有指定管理員才可以操作,以防止其他使用者隨意更改數(shù)據(jù),保證數(shù)據(jù)的安全性。
程序框架圖
3.2 功能實(shí)現(xiàn)
3.2.1 數(shù)據(jù)庫操作方面(對數(shù)據(jù)庫操作即是crud)
將JDBC技術(shù)所需使用的數(shù)據(jù)庫連接信息(數(shù)據(jù)庫驅(qū)動程序,URL,用戶名,密碼等)封裝成一個類,方便項(xiàng)目在不同數(shù)據(jù)庫下使用時進(jìn)行數(shù)據(jù)庫信息修改。
設(shè)計(jì)一個操作數(shù)據(jù)庫的模型類DaoPattern.java,里面是操作數(shù)據(jù)庫信息的底層模型,包含兩個方法,更新(包含增刪改)數(shù)據(jù)庫中的信息,和查詢數(shù)據(jù)庫中的信息,其中查詢數(shù)據(jù)庫信息返回的是結(jié)果集。這兩個方法不提供具體的增刪改查的sql語句,反而是把這些功能交到數(shù)據(jù)庫業(yè)務(wù)邏輯層去實(shí)現(xiàn)。
設(shè)計(jì)操作數(shù)據(jù)庫的業(yè)務(wù)邏輯類(InfoUpdate.java;InfoSelect.Java),這些類根據(jù)對數(shù)據(jù)庫信息的不同操作而提供不同的sql語句來操作數(shù)據(jù)庫。
對數(shù)據(jù)庫信息的查詢,盡量避免使用*查詢所有信息而減慢查詢的相應(yīng)速度。
3.2.2 照片信息處理方面
在項(xiàng)目路徑下開一個文件夾picture,用來存儲成員的照片,而數(shù)據(jù)庫中存儲的是對應(yīng)照片的路徑。
添加/修改照片的處理:
點(diǎn)擊選擇照片按鈕時,彈出打開文件選擇對話框,此打開文件選擇對話框設(shè)置文件過濾器,顯示圖片文件
對所選擇的圖片文件,還要做處理,處理所選擇的文件是否存在
圖片文件存在:還要做處理,處理項(xiàng)目路徑下picture文件夾是否存在與當(dāng)前圖片文件同名的文件不存在同名文件:將所選擇的圖片復(fù)制到picture文件夾下,并獲取圖片路徑,將路徑添加到數(shù)據(jù)庫中,并在標(biāo)簽上顯示該照片
存在同名文件:提示用戶所選文件不可用,要么更改所選文件的名稱,要么另選文件
查詢照片的處理:
從數(shù)據(jù)庫中取出照片的路徑,根據(jù)此路徑創(chuàng)建圖標(biāo)圖像對象:public ImageIcon(String filename) 根據(jù)指定的文件創(chuàng)建一個 ImageIcon
設(shè)置此圖標(biāo)圖像的縮放,照片以適當(dāng)大小顯示在相應(yīng)位置
將照片顯示在標(biāo)簽上
3.2.3 登錄模塊輸入學(xué)號和密碼,選擇登錄的身份,點(diǎn)擊“登錄”按鈕
初始學(xué)號是:111111111,初始密碼:123456,初始身份:管理員
若學(xué)號為空,彈出提示對話框,提示“學(xué)號不能為空”
若學(xué)號不為空:但輸入的學(xué)號不存在,提示“信息不存在”
而若是輸入的信息不正確,則提示“您的信息有誤!請重新輸入”
若信息無誤,釋放登錄界面,同時對用戶權(quán)限進(jìn)行設(shè)置;進(jìn)入主界面,并顯示當(dāng)前使用者信息
若登錄的是管理員,將“修改密碼”, “添加成員信息”,“刪除成員信息”,“修改成員信息”等菜單項(xiàng)設(shè)置為可編輯,允許用戶操作
而若登錄的是普通成員,則無法進(jìn)行 修改密碼 和 增刪改信息操作
“重置”按鈕:所以內(nèi)容還原成默認(rèn)
3.2.4 修改密碼模塊此模塊只有管理員才可操作
若選擇的是“設(shè)置”菜單下的“修改密碼”菜單項(xiàng),則進(jìn)入修改密碼界面
輸入要修改密碼的學(xué)號,設(shè)置新密碼,并再次輸入密碼確認(rèn)。
點(diǎn)擊“修改”按鈕:
如果新密碼與確認(rèn)密碼不匹配,彈出提示對話框,提示“請準(zhǔn)確輸入您要修改的密碼”
如果兩個密碼匹配:而要修改密碼的學(xué)號不存在,彈出提示對話框提示“該學(xué)號不存在”
而若存在,會返回是否成功的信息。如果修改成功,彈出提示對話框提示“密碼修改成功”,如果不成功,則提示“密碼修改失敗,請確認(rèn)輸入的信息是否正確!”
若要繼續(xù)修改,點(diǎn)擊“重置”按鈕
點(diǎn)擊“重置”按鈕:清空文本框內(nèi)容
3.2.5 查詢成員信息模塊
若選擇的是“操作”菜單下的“查詢成員信息”菜單項(xiàng),有多種查詢方式。
選擇查詢條件:年級、性別、系別;點(diǎn)擊“泛查找”按鈕
根據(jù)條件到數(shù)據(jù)庫中查詢信息,返回滿足條件的學(xué)號如果集合為空,則沒有查詢結(jié)果,彈出對話框提示“找不到信息”
如果集合不為空,則有查詢結(jié)果,在查詢模板左側(cè)的列表框中顯示查詢后的學(xué)號,并記錄滿足條件的學(xué)號共有幾條
根據(jù)學(xué)號查詢:
輸入所要查詢的學(xué)號,點(diǎn)擊“根據(jù)學(xué)號查找”按鈕
或在列表框中選擇要查詢的學(xué)號
如果是輸入學(xué)號查詢,還有防止輸入的學(xué)號為空的情況。
獲取輸入或選中的學(xué)號,到數(shù)據(jù)庫中去查詢,返回查詢后的結(jié)果集如果結(jié)果集為空:沒有查詢到任何信息。彈出提示對話框提示“該學(xué)號不存在,請確認(rèn)后重新輸入!”
如果結(jié)果集不為空:從結(jié)果集中取出信息顯示在界面的相應(yīng)位置。特別地,對于照片的處理,根據(jù)獲取的照片路徑創(chuàng)建圖標(biāo)圖像對象,同時為了照片以適當(dāng)?shù)拇笮★@示,設(shè)置了圖像的縮放,然后把照片顯示在對應(yīng)標(biāo)簽上
3.2.6 添加成員信息模塊填寫成員基本信息,如果需要上傳照片,點(diǎn)擊“選擇圖片”按鈕,將會彈出打開文件選擇對話框,此文件選擇器設(shè)置了文件過濾器(打開圖片文件),并對于 所要打開的文件,先判斷其在當(dāng)前路徑下是否存在。在存在的情況下,將其文件復(fù)制到項(xiàng)目路徑下的picture文件夾中,但前提也要判斷改文件夾是否存在同名文件。復(fù)制好后獲取該文件在項(xiàng)目路徑下的路徑,存入到數(shù)據(jù)庫中
點(diǎn)擊“錄入”按鈕:錄入 信息前,對于數(shù)據(jù)庫中某些不允許為空的字段,先強(qiáng)制用戶必須填寫;然后對于所錄入的學(xué)號,先到數(shù)據(jù)庫中查詢該學(xué)號是否已經(jīng)存在。在不存在的情況 下,將填寫的信息錄入數(shù)據(jù)庫中,并返回操作是否成功的提示
點(diǎn)擊“重置”按鈕:將內(nèi)容清空還原成默認(rèn)
3.2.7 修改成員信息模塊用戶要修改信息,必須先輸入要修改信息的學(xué)號
點(diǎn)擊“搜索”按鈕:但前提要保證學(xué)號不為空,然后根據(jù)用戶輸入的學(xué)號,到數(shù)據(jù)庫中去查詢該學(xué)號成員的基本信息,返回結(jié)果集
如果結(jié)果集為空,彈出對話框提示“該學(xué)號不存在!請確認(rèn)后重新輸入!”
如果結(jié)果集不為空,將查詢到的信息顯示出來。用戶就可以根據(jù)需要修改某些信息,對于照片的修改,與照片添加的操作類似,但有不同的一點(diǎn)是,一旦更換了照片,那么之前提供的照片要刪除掉
點(diǎn)擊“錄入修改”按鈕:獲取用戶修改后的信息,到數(shù)據(jù)庫中去修改,并返回是否修改成功的提示信息
點(diǎn)擊“重置”按鈕:將全部內(nèi)容清空還原默認(rèn)
3.2.8 刪除成員信息模塊用戶要刪除信息,必須先輸入要刪除信息的學(xué)號
點(diǎn)擊“搜索”按鈕:但前提要保證學(xué)號不為空,然后根據(jù)用戶輸入的學(xué)號,到數(shù)據(jù)庫中去查詢該學(xué)號成員的基本信息,返回結(jié)果集
如果結(jié)果集為空,彈出對話框提示“該學(xué)號不存在!請確認(rèn)后重新輸入!”
如果結(jié)果集不為空,將查詢到的信息顯示出來。
點(diǎn)擊“刪除”按鈕:為防止用戶使用時由于某些不小心操作而刪除數(shù)據(jù),提高系統(tǒng)的安全性。所以在點(diǎn)擊刪除按鈕的時候,還要彈出確認(rèn)對話框,咨詢用戶是否刪除。用戶確認(rèn)刪除后,才到數(shù)據(jù)庫中去刪除信息,并返回刪除是否成功的提示
點(diǎn)擊“重置”按鈕:文本內(nèi)容清空還原默認(rèn)
總結(jié)
以上是生活随笔為你收集整理的java swing 组织机构_课内资源 - 基于Java Swing的小型社团成员管理系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cpn tools查看运行时间_Jmet
- 下一篇: ipfs分布式存储网络服务器系统,IPF