數(shù)據(jù)庫課程設計——班級事務管理系統(tǒng)_第1頁
數(shù)據(jù)庫課程設計——班級事務管理系統(tǒng)_第2頁
數(shù)據(jù)庫課程設計——班級事務管理系統(tǒng)_第3頁
數(shù)據(jù)庫課程設計——班級事務管理系統(tǒng)_第4頁
數(shù)據(jù)庫課程設計——班級事務管理系統(tǒng)_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、 1.數(shù)據(jù)庫設計內(nèi)容1.1.課程設計任務與要求1.1.1.任務班級事務管理系統(tǒng)問題描述:班級管理信息系統(tǒng)的任務是收集、存儲、管理班級同學的相關信息,以及班級日常管理中的相關信息。為班級信息公開、增進同學交流了解服務,同時加強班級管理、提高班級管理與服務的效率和質(zhì)量。1.1.2.設計要求、實現(xiàn)用戶登錄。、實現(xiàn)管理員管理班級事務。(學生信息、成績、課程、詳細信息的增、刪、改、查)、實現(xiàn)學生成績查詢。、實現(xiàn)個人事務管理。、實現(xiàn)生活委員班費管理。1.1.3.運行環(huán)境WindowsXP、SQL Server5.0、Myeclipse6.0、Tomcat5.5.28、IE 瀏覽器、JDK1.2需求分析1.

2、2.1.數(shù)據(jù)需求班級事務管理系統(tǒng)需要完成功能主要有:學生基本信息的輸入,包括學號、姓名、擔任職務等。學生基本信息的添加、查詢、修改、刪除,包括學生學號、姓名、職務、角色等。學生成績的添加、查詢、修改、刪除,包括學號、課程號、分數(shù)。課程的添加、刪除,包括課程號、課程名、學分、任課老師。生活委員對班費的管理,包括班費的收入、支出。個人對本人事務的管理,包括時間和事件。1.2.2事物需求管理員對學生事務管理部分,要求:a、可以查詢學生基本、詳細信息、課程信息以及成績。b、可以對學生基本信息、詳細信息進行添加、修改及刪除操作。c、可以對課程信息進行添加、刪除操作。d、可以對學生成績進行添加、刪除操作。

3、生活委員對班費的管理,要求:a、可以查詢班費收入支出的詳細信息。b、可以對班費信息進行添加、修改、刪除操作。1.2.3關系模式學生用戶表(學號、姓名、密碼、擔任職務、角色)課程表(課程號、課程名、學分、任課老師)成績表(主鍵、學號、課程號、成績)學生詳細信息表(id、學生學號、出生日期、身份證號碼、家庭往址、宿舍號、銀行卡號)生活委員事物表(ID、時間、活動地點、活動人數(shù)、消費前班費余額、消費金額、消費后班費余額、活動意義、活動結果)其它管理頁面(ID、時間、內(nèi)容、結果)1.3概念結構設計1.3.1. E-R圖擔任職務密碼學號角色姓名角色姓名ID密碼ID成績管理家庭住址出生日期學號ID身份證號

4、銀行卡號學生詳細信息查詢管理學生基本信息管理員生活委員事務管理課程名課程管理管理角色密碼姓名學生分數(shù)課程號學號結果事件時間查詢總余額人數(shù)消費金額地點個人事務管理結果課程號時間ID意義ID任課老師學分1.4.邏輯結構設計1.4.1表結構1.4.2數(shù)據(jù)庫設計及完整性約束學生用戶表:create table user(id int auto_increment primary key,username varchar(10),userpass varchar(20),userjob varchar(10),userrole varchar(10)課程表:create table course(id

5、int auto_increment primary key,cname varchar(20),ccredit int,cteacher varchar(20)成績表:create table Sc(id int auto_increment primary key,uid int,cid int,sgrade varchar(5)ALTER TABLE Sc ADD CONSTRAINT fk_Sc_uid FOREIGN KEY(uid) REFERENCES user(id);ALTER TABLE Sc ADD CONSTRAINT fk_Sc_cid FOREIGN KEY(cid

6、) REFERENCES course(id);學生詳細信息表:create table stuinfo(id int auto_increment primary key,stuid int,stubirth varchar(20),stuidentity varchar(30),stuaddr varchar(200),studorm varchar(20),stucard varchar(20)ALTER TABLE stuinfo ADD CONSTRAINT fk_stuinfo_stuid FOREIGN KEY(stuid) REFERENCES user(id);生活委員事物表

7、:create table shwy(id int auto_increment primary key,time varchar(20),addr varchar(100),stunum int ,startmoney decimal,expense decimal,endmoney decimal,actmeaning text,actresult varchar(10)其它管理頁面:create table qita(id int auto_increment primary key,qtime varchar(20),qcontent text,qresult varchar(20)1

8、.4.3.數(shù)據(jù)庫用戶權限管理該系統(tǒng)設置三種類型的用戶(1)管理員(admin) 即系統(tǒng)管理員擁有對學生基本信息、詳細信息、成績、課程的管理權限。(2)生活委員(shwy) 可以對班級班費收入支出的詳細信息進行管理;(3)其他個人(qita)對個人事務事件進行管理。2.應用系統(tǒng)設計2.1.需求分析2.1.1數(shù)據(jù)需求班級事務管理系統(tǒng)需要完成功能主要有:學生基本信息的輸入,包括學號、姓名、擔任職務等。學生基本信息的添加、查詢、修改、刪除,包括學生學號、姓名、職務、角色等。學生成績的添加、查詢、修改、刪除,包括學號、課程號、分數(shù)。課程的添加、刪除,包括課程號、課程名、學分、任課老師。生活委員對班費的管

9、理,包括班費的收入、支出。個人對本人事務的管理,包括時間和事件。2.1.2事物需求管理員對學生事務管理部分,要求:a、可以查詢學生基本、詳細信息、課程信息以及成績。b、可以對學生基本信息、詳細信息進行添加、修改及刪除操作。c、可以對課程信息進行添加、刪除操作。d、可以對學生成績進行添加、刪除操作。生活委員對班費的管理,要求:a、可以查詢班費收入支出的詳細信息。b、可以對班費信息進行添加、修改、刪除操作。2.1.3關系模式學生用戶表(學號、姓名、密碼、擔任職務、角色)課程表(課程號、課程名、學分、任課老師)成績表(主鍵、學號、課程號、成績)學生詳細信息表(id、學生學號、出生日期、身份證號碼、家

10、庭往址、宿舍號、銀行卡號)生活委員事物表(ID、時間、活動地點、活動人數(shù)、消費前班費余額、消費金額、消費后班費余額、活動意義、活動結果)其它管理頁面(ID、時間、內(nèi)容、結果)2.1.5數(shù)據(jù)字典 為了使各數(shù)據(jù)流,數(shù)據(jù)處理過程,存儲過程不能反映其中的數(shù)據(jù)成,數(shù)據(jù)項目,數(shù)據(jù)特性,所以用數(shù)據(jù)字典來對數(shù)據(jù)流圖中的各成份進行具體的定義,為系統(tǒng)的分析,設計及以后的實現(xiàn)提供供有關元素一致性定義和詳細的描述:數(shù)據(jù)流字典數(shù)據(jù)流名稱:管理員登錄(P3) 來源:管理員去向:查詢學生基本信息數(shù)據(jù)組成:姓名+密碼+登錄權限數(shù)據(jù)流名稱:學生個人登錄 來源:個人去向:查詢個人信息數(shù)據(jù)組成:姓名+密碼+登錄權限數(shù)據(jù)流名稱:生活

11、委員登錄 來源:生活委員去向:班費管理數(shù)據(jù)組成:姓名+密碼+登錄權限數(shù)據(jù)流名稱:所有學生基本信息查詢 來源:管理員去向: 查詢處理過程數(shù)據(jù)組成:學號|姓名|密碼|擔任職務|角色數(shù)據(jù)流名稱:所有學生詳細信息查詢 來源:管理員去向: 查詢處理過程數(shù)據(jù)組成:學生學號|出生日期|身份證號碼|家庭往址|宿舍號|銀行卡號數(shù)據(jù)流名稱:成績和課程查詢來源:學生去向:查詢處理過程數(shù)據(jù)組成:主鍵|學號|課程號|成績數(shù)據(jù)流名稱:班費管理查詢來源:生活委員去向:查詢處理過程(P3)數(shù)據(jù)組成:ID|時間|活動地點|活動人數(shù)|消費前班費余額|消費金額|消費后班費余額|活動意義|活動結果數(shù)據(jù)流名稱:個人事務查詢來源:學生去

12、向:查詢處理過程數(shù)據(jù)組成:ID|時間|內(nèi)容|結果2.2.概念結構設計班費管理個人事務管理個人事務管理課程管理成績管理詳細信息管理基本信息管理生活委員管理班費事宜管理員管理班級事務班級事務管理系統(tǒng)2.3.詳細設計2.3.1流程圖更新頁面刪除刪除添加頁面查詢基本信息添加頁面詳細信息查詢管理員查詢?nèi)砍煽兊卿浱砑禹撁嫣砑禹撁鎰h除普通用戶添加頁面刪除個人事務管理頁面事務登錄界面班費管理頁面添加頁面刪除更新頁面成績查詢個人頁面刪除課程查詢2.4.運行界面2.4.1管理員登陸界面2.4.2管理員查詢、添加、修改、刪除學生基本信息表程序代碼說明package .dao;import java.io.Unsu

13、pportedEncodingException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.LinkedList;import java.util.List;import .bean.UserBean;import .util.DBConnection;public class StudentDao public List queryAllStudent()List lis

14、t = new LinkedList();Connection conn = DBConnection.getConnection();try PreparedStatement ps = conn.prepareStatement("select * from user");ResultSet rs = ps.executeQuery();while (rs.next() UserBean student = new UserBean();student.setId(rs.getInt("id");student.setUsername(rs.getS

15、tring("username");student.setUserpass(rs.getString("userpass");student.setUserjob(rs.getString("userjob");student.setUserrole(rs.getString("userrole");list.add(student); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e)

16、 e.printStackTrace();return list;public UserBean queryById(int id)Connection conn = DBConnection.getConnection();UserBean student=null;try PreparedStatement ps = conn.prepareStatement("select * from user where id=?");ps.setInt(1, id);ResultSet rs = ps.executeQuery();while (rs.next() studen

17、t = new UserBean();student.setId(rs.getInt("id");student.setUsername(rs.getString("username");student.setUserpass(rs.getString("userpass");student.setUserjob(rs.getString("userjob");student.setUserrole(rs.getString("userrole"); catch (SQLException e)

18、 e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return student;public int updateStuInfo(UserBean stu)Connection conn = DBConnection.getConnection();UserBean student=null;int flag=0;try PreparedStatement ps = conn.prepareStatement("update user set usernam

19、e=?,userpass=?,userjob=?,userrole=? where id=?");ps.setString(1,stu.getUsername() );ps.setString(2,stu.getUserpass() );ps.setString(3,stu.getUserjob();ps.setString(4,stu.getUserrole() );ps.setInt(5, stu.getId();flag= ps.executeUpdate(); catch (SQLException e) e.printStackTrace();finallytry conn

20、.close(); catch (SQLException e) e.printStackTrace();return flag;public int deleteInfo(int id)Connection conn = DBConnection.getConnection();UserBean lb=null;int flag=0;try PreparedStatement ps = conn.prepareStatement("delete from user where id=?");ps.setInt(1, id);flag= ps.executeUpdate()

21、; catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return flag;public int addStudentInfo(UserBean ub) int flag = 0;Connection conn = DBConnection.getConnection();PreparedStatement ps;String username=ub.getUsername();try username=new Strin

22、g(username.getBytes("ISO-8859-1"),"UTF-8"); catch (UnsupportedEncodingException e1) e1.printStackTrace();try ps = conn.prepareStatement("insert into user(username,userpass,userjob,userrole) values(?,?,?,?)");ps.setString(1, ub.getUsername();ps.setString(2, ub.getUserpas

23、s();ps.setString(3,ub.getUserjob();ps.setString(4, ub.getUserrole();flag=ps.executeUpdate();conn.close(); catch (SQLException e) e.printStackTrace();return flag;2.4.3.成績查詢、添加、刪除程序代碼說明:package .dao;import java.io.UnsupportedEncodingException;import java.sql.Connection;import java.sql.PreparedStatemen

24、t;import java.sql.ResultSet;import java.sql.SQLException;import java.util.LinkedList;import java.util.List;import .bean.CoursBean;import .bean.ScBean;import .bean.UserBean;import .util.DBConnection;public class ScDao public List queryAllSc()List list = new LinkedList();Connection conn = DBConnection

25、.getConnection();try PreparedStatement ps = conn.prepareStatement("select * from sc");ResultSet rs = ps.executeQuery();while (rs.next() ScBean scb= new ScBean();scb.setId(rs.getInt("id");scb.setUid(rs.getInt("uid");scb.setCid(rs.getInt("cid");scb.setSgrade(rs.

26、getString("sgrade");list.add(scb); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return list;public int deleteScInfo(int id)Connection conn = DBConnection.getConnection();ScBean lb=null;int flag=0;try PreparedStatement ps = c

27、onn.prepareStatement("delete from sc where id=?;");ps.setInt(1, id);flag= ps.executeUpdate(); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return flag;public int addScInfo(ScBean ub) int flag = 0;Connection conn = DBConnecti

28、on.getConnection();PreparedStatement ps;try ps = conn.prepareStatement("insert into sc(uid,cid,sgrade) values(?,?,?)");ps.setInt(1, ub.getUid();ps.setInt(2, ub.getCid();ps.setString(3,ub.getSgrade();flag=ps.executeUpdate();conn.close(); catch (SQLException e) e.printStackTrace();return fla

29、g;2.4.4.課程的查詢、添加、刪除程序代碼說明:package .dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.LinkedList;import java.util.List;import .bean.CoursBean;import .bean.ScBean;import .util.DBConnection;public class CourseDao pub

30、lic List queryAllCourse()List list = new LinkedList();Connection conn = DBConnection.getConnection();try PreparedStatement ps = conn.prepareStatement("select * from course");ResultSet rs = ps.executeQuery();while (rs.next() CoursBean scb= new CoursBean();scb.setId(rs.getInt("id")

31、;scb.setCname(rs.getString("cname");scb.setCcredit(rs.getInt("ccredit");scb.setCteacher(rs.getString("cteacher");list.add(scb); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return list;public int deleteCo

32、urseInfo(int id)Connection conn = DBConnection.getConnection();ScBean lb=null;int flag=0;try PreparedStatement ps = conn.prepareStatement("delete from course where id=?;");ps.setInt(1, id);flag= ps.executeUpdate(); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (

33、SQLException e) e.printStackTrace();return flag;public int addCourseInfo(CoursBean cb) int flag = 0;Connection conn = DBConnection.getConnection();PreparedStatement ps;try ps = conn.prepareStatement("insert into course(cname,ccredit,cteacher) values(?,?,?)");ps.setString(1, cb.getCname();p

34、s.setInt(2, cb.getCcredit();ps.setString(3,cb.getCteacher();flag=ps.executeUpdate();conn.close(); catch (SQLException e) e.printStackTrace();return flag;2.4.5.學生詳細信息的查詢、添加、刪除程序代碼說明:package .dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQL

35、Exception;import java.util.LinkedList;import java.util.List;import .bean.StuInfoBean;import .util.DBConnection;public class StuInfoDao public List queryAllStuInfo()List list = new LinkedList();Connection conn = DBConnection.getConnection();try PreparedStatement ps = conn.prepareStatement("selec

36、t * from stuinfo");ResultSet rs = ps.executeQuery();while (rs.next() StuInfoBean sfb= new StuInfoBean();sfb.setId(rs.getInt("id");sfb.setId(rs.getInt("stuid");sfb.setStubirth(rs.getString("stubirth");sfb.setStuidentity(rs.getString("stuidentity");sfb.setS

37、tuaddr(rs.getString("stuaddr");sfb.setStudorm(rs.getString("studorm");sfb.setStucard(rs.getString("stucard");list.add(sfb); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return list;/管理員刪除學生詳細信息public int

38、deleteStuInfo(int id)Connection conn = DBConnection.getConnection();StuInfoBean lb=null;int flag=0;try PreparedStatement ps = conn.prepareStatement("delete from stuinfo where id=?;");ps.setInt(1, id);flag= ps.executeUpdate(); catch (SQLException e) e.printStackTrace();finallytry conn.close

39、(); catch (SQLException e) e.printStackTrace();return flag;/添加學生詳細信息public int addStuInfo(StuInfoBean cb) int flag = 0;Connection conn = DBConnection.getConnection();PreparedStatement ps;try ps = conn.prepareStatement("insertintostuinfo(stuid,stubirth,stuidentity,stuaddr,studorm,stucard) values

40、(?,?,?,?,?,?)");ps.setInt(1, cb.getStuid();ps.setString(2, cb.getStubirth();ps.setString(3, cb.getStuidentity();ps.setString(4,cb.getStuaddr();ps.setString(5, cb.getStudorm();ps.setString(6,cb.getStucard();flag=ps.executeUpdate();conn.close(); catch (SQLException e) e.printStackTrace();return f

41、lag;2.4.6.普通用戶登錄界面2.4.7.個人事務管理登錄界面2.4.8.生活委員管理特殊權限程序代碼說明:package .dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.LinkedList;import java.util.List;import .bean.ShwyBean;import .util.DBConnection;public class Act

42、ivityDao public List queryAllActivity()List list = new LinkedList();Connection conn = DBConnection.getConnection();try PreparedStatement ps = conn.prepareStatement("select * from shwy");ResultSet rs = ps.executeQuery();while (rs.next() ShwyBean scb= new ShwyBean();scb.setId(rs.getInt("

43、;id");scb.setTime(rs.getString("time");scb.setAddr(rs.getString("addr");scb.setStunum(rs.getInt("stunum");scb.setStartmoney(rs.getDouble("startmoney");scb.setExpense(rs.getDouble("expense");scb.setEndmoney(rs.getDouble("endmoney");scb.

44、setActmeaning(rs.getString("actmeaning");scb.setActresult(rs.getString("actresult");list.add(scb); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return list;public int deleteArrInfo(int id)Connection conn = DBConnec

45、tion.getConnection();ShwyBean lb=null;int flag=0;try PreparedStatement ps = conn.prepareStatement("delete from shwy where id=?");ps.setInt(1, id);flag= ps.executeUpdate(); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return

46、flag;public int addArrInfo(ShwyBean cb) int flag = 0;Connection conn = DBConnection.getConnection();PreparedStatement ps;try ps = conn.prepareStatement("insertintoshwy(time,addr,stunum,startmoney,expense,endmoney,actmeaning,actresult) values(?,?,?,?,?,?,?,?)");ps.setString(1, cb.getTime();

47、ps.setString(2, cb.getAddr();ps.setInt(3, cb.getStunum();ps.setDouble(4, cb.getStartmoney();ps.setDouble(5,cb.getExpense();ps.setDouble(6,cb.getEndmoney();ps.setString(7,cb.getActmeaning();ps.setString(8,cb.getActresult();flag=ps.executeUpdate();conn.close(); catch (SQLException e) e.printStackTrace

48、();return flag;public ShwyBean queryById(int id)Connection conn = DBConnection.getConnection();ShwyBean sb=null;try PreparedStatement ps = conn.prepareStatement("select * from shwy where id=?");ps.setInt(1, id);ResultSet rs = ps.executeQuery();while (rs.next() sb = new ShwyBean();sb.setId(

49、rs.getInt("id");sb.setTime(rs.getString("time");sb.setAddr(rs.getString("addr");sb.setStunum(rs.getInt("stunum");sb.setStartmoney(rs.getDouble("startmoney");sb.setExpense(rs.getDouble("expense");sb.setEndmoney(rs.getDouble("endmoney&qu

50、ot;);sb.setActmeaning(rs.getString("actmeaning");sb.setActresult(rs.getString("actresult"); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return sb;public int updateArrInfo(ShwyBean sb)Connection conn = DBConnection.getConnection();ShwyBean student=null;int flag=0;try PreparedStatement

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論