数据库课程设计――班级事务管理系统_第1页
数据库课程设计――班级事务管理系统_第2页
数据库课程设计――班级事务管理系统_第3页
数据库课程设计――班级事务管理系统_第4页
数据库课程设计――班级事务管理系统_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 1.数据库设计内容1.1.课程设计任务与要求1.1.1.任务班级事务管理系统问题描述:班级管理信息系统的任务是收集、存储、管理班级同学的相关信息,以及班级日常管理中的相关信息。为班级信息公开、增进同学交流了解服务,同时加强班级管理、提高班级管理与服务的效率和质量。1.1.2.设计要求、实现用户登录。、实现管理员管理班级事务。(学生信息、成绩、课程、详细信息的增、删、改、查)、实现学生成绩查询。、实现个人事务管理。、实现生活委员班费管理。1.1.3.运行环境WindowsXP、SQL Server5.0、Myeclipse6.0、Tomcat5.5.28、IE 浏览器、JDK1.2需求分析1.

2、2.1.数据需求班级事务管理系统需要完成功能主要有:学生基本信息的输入,包括学号、姓名、担任职务等。学生基本信息的添加、查询、修改、删除,包括学生学号、姓名、职务、角色等。学生成绩的添加、查询、修改、删除,包括学号、课程号、分数。课程的添加、删除,包括课程号、课程名、学分、任课老师。生活委员对班费的管理,包括班费的收入、支出。个人对本人事务的管理,包括时间和事件。1.2.2事物需求管理员对学生事务管理部分,要求:a、可以查询学生基本、详细信息、课程信息以及成绩。b、可以对学生基本信息、详细信息进行添加、修改及删除操作。c、可以对课程信息进行添加、删除操作。d、可以对学生成绩进行添加、删除操作。

3、生活委员对班费的管理,要求:a、可以查询班费收入支出的详细信息。b、可以对班费信息进行添加、修改、删除操作。1.2.3关系模式学生用户表(学号、姓名、密码、担任职务、角色)课程表(课程号、课程名、学分、任课老师)成绩表(主键、学号、课程号、成绩)学生详细信息表(id、学生学号、出生日期、身份证号码、家庭往址、宿舍号、银行卡号)生活委员事物表(ID、时间、活动地点、活动人数、消费前班费余额、消费金额、消费后班费余额、活动意义、活动结果)其它管理页面(ID、时间、内容、结果)1.3概念结构设计1.3.1. E-R图担任职务密码学号角色姓名角色姓名ID密码ID成绩管理家庭住址出生日期学号ID身份证号

4、银行卡号学生详细信息查询管理学生基本信息管理员生活委员事务管理课程名课程管理管理角色密码姓名学生分数课程号学号结果事件时间查询总余额人数消费金额地点个人事务管理结果课程号时间ID意义ID任课老师学分1.4.逻辑结构设计1.4.1表结构1.4.2数据库设计及完整性约束学生用户表: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.数据库用户权限管理该系统设置三种类型的用户(1)管理员(admin) 即系统管理员拥有对学生基本信息、详细信息、成绩、课程的管理权限。(2)生活委员(shwy) 可以对班级班费收入支出的详细信息进行管理;(3)其他个人(qita)对个人事务事件进行管理。2.应用系统设计2.1.需求分析2.1.1数据需求班级事务管理系统需要完成功能主要有:学生基本信息的输入,包括学号、姓名、担任职务等。学生基本信息的添加、查询、修改、删除,包括学生学号、姓名、职务、角色等。学生成绩的添加、查询、修改、删除,包括学号、课程号、分数。课程的添加、删除,包括课程号、课程名、学分、任课老师。生活委员对班费的管

9、理,包括班费的收入、支出。个人对本人事务的管理,包括时间和事件。2.1.2事物需求管理员对学生事务管理部分,要求:a、可以查询学生基本、详细信息、课程信息以及成绩。b、可以对学生基本信息、详细信息进行添加、修改及删除操作。c、可以对课程信息进行添加、删除操作。d、可以对学生成绩进行添加、删除操作。生活委员对班费的管理,要求:a、可以查询班费收入支出的详细信息。b、可以对班费信息进行添加、修改、删除操作。2.1.3关系模式学生用户表(学号、姓名、密码、担任职务、角色)课程表(课程号、课程名、学分、任课老师)成绩表(主键、学号、课程号、成绩)学生详细信息表(id、学生学号、出生日期、身份证号码、家

10、庭往址、宿舍号、银行卡号)生活委员事物表(ID、时间、活动地点、活动人数、消费前班费余额、消费金额、消费后班费余额、活动意义、活动结果)其它管理页面(ID、时间、内容、结果)2.1.5数据字典 为了使各数据流,数据处理过程,存储过程不能反映其中的数据成,数据项目,数据特性,所以用数据字典来对数据流图中的各成份进行具体的定义,为系统的分析,设计及以后的实现提供供有关元素一致性定义和详细的描述:数据流字典数据流名称:管理员登录(P3) 来源:管理员去向:查询学生基本信息数据组成:姓名+密码+登录权限数据流名称:学生个人登录 来源:个人去向:查询个人信息数据组成:姓名+密码+登录权限数据流名称:生活

11、委员登录 来源:生活委员去向:班费管理数据组成:姓名+密码+登录权限数据流名称:所有学生基本信息查询 来源:管理员去向: 查询处理过程数据组成:学号|姓名|密码|担任职务|角色数据流名称:所有学生详细信息查询 来源:管理员去向: 查询处理过程数据组成:学生学号|出生日期|身份证号码|家庭往址|宿舍号|银行卡号数据流名称:成绩和课程查询来源:学生去向:查询处理过程数据组成:主键|学号|课程号|成绩数据流名称:班费管理查询来源:生活委员去向:查询处理过程(P3)数据组成:ID|时间|活动地点|活动人数|消费前班费余额|消费金额|消费后班费余额|活动意义|活动结果数据流名称:个人事务查询来源:学生去

12、向:查询处理过程数据组成:ID|时间|内容|结果2.2.概念结构设计班费管理个人事务管理个人事务管理课程管理成绩管理详细信息管理基本信息管理生活委员管理班费事宜管理员管理班级事务班级事务管理系统2.3.详细设计2.3.1流程图更新页面删除删除添加页面查询基本信息添加页面详细信息查询管理员查询全部成绩登录添加页面添加页面删除普通用户添加页面删除个人事务管理页面事务登录界面班费管理页面添加页面删除更新页面成绩查询个人页面删除课程查询2.4.运行界面2.4.1管理员登陆界面2.4.2管理员查询、添加、修改、删除学生基本信息表程序代码说明package .dao;import java.i

13、o.UnsupportedEncodingException;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 queryAl

14、lStudent()List list = 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.getString(

15、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) e.printStackTrace();return list;public UserBean query

16、ById(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() student = new UserBean();student.setId(rs.getInt(id);student.setUsername

17、(rs.getString(username);student.setUserpass(rs.getString(userpass);student.setUserjob(rs.getString(userjob);student.setUserrole(rs.getString(userrole); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return student;public int updateStuIn

18、fo(UserBean stu)Connection conn = DBConnection.getConnection();UserBean student=null;int flag=0;try PreparedStatement ps = conn.prepareStatement(update user set username=?,userpass=?,userjob=?,userrole=? where id=?);ps.setString(1,stu.getUsername() );ps.setString(2,stu.getUserpass() );ps.setString(3

19、,stu.getUserjob();ps.setString(4,stu.getUserrole() );ps.setInt(5, stu.getId();flag= ps.executeUpdate(); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return flag;public int deleteInfo(int id)Connection conn = DBConnection.getConnection

20、();UserBean lb=null;int flag=0;try PreparedStatement ps = conn.prepareStatement(delete from user 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 addStudentInfo

21、(UserBean ub) int flag = 0;Connection conn = DBConnection.getConnection();PreparedStatement ps;String username=ub.getUsername();try username=new String(username.getBytes(ISO-8859-1),UTF-8); catch (UnsupportedEncodingException e1) e1.printStackTrace();try ps = conn.prepareStatement(insert into user(u

22、sername,userpass,userjob,userrole) values(?,?,?,?);ps.setString(1, ub.getUsername();ps.setString(2, ub.getUserpass();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.成绩查询、添加、删除程序代码说明:pac

23、kage .dao;import java.io.UnsupportedEncodingException;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 .bean.

24、UserBean;import .util.DBConnection;public class ScDao public List queryAllSc()List list = new LinkedList();Connection conn = DBConnection.getConnection();try PreparedStatement ps = conn.prepareStatement(select * from sc);ResultSet rs = ps.executeQuery();while (rs.next() ScBean scb= new ScBean(

25、);scb.setId(rs.getInt(id);scb.setUid(rs.getInt(uid);scb.setCid(rs.getInt(cid);scb.setSgrade(rs.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 =

26、DBConnection.getConnection();ScBean lb=null;int flag=0;try PreparedStatement ps = conn.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;pu

27、blic int addScInfo(ScBean ub) int flag = 0;Connection conn = DBConnection.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.clos

28、e(); catch (SQLException e) e.printStackTrace();return flag;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;im

29、port .bean.ScBean;import .util.DBConnection;public class CourseDao public List queryAllCourse()List list = new LinkedList();Connection conn = DBConnection.getConnection();try PreparedStatement ps = conn.prepareStatement(select * from course);ResultSet rs = ps.executeQuery();while (rs.nex

30、t() CoursBean scb= new CoursBean();scb.setId(rs.getInt(id);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 li

31、st;public int deleteCourseInfo(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(

32、); catch (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();ps.s

33、etInt(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.

34、SQLException;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.prepareStatem

35、ent(select * 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.setStuaddr(rs.getString(stuaddr);sfb.setStudorm(r

36、s.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 deleteStuInfo(int id)Connection conn = DBConnection.getConnection();StuInfoBean l

37、b=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(); catch (SQLException e) e.printStackTrace();return flag;/添加学生详细信息public int addStuInfo(Stu

38、InfoBean cb) int flag = 0;Connection conn = DBConnection.getConnection();PreparedStatement ps;try ps = conn.prepareStatement(insertintostuinfo(stuid,stubirth,stuidentity,stuaddr,studorm,stucard) values(?,?,?,?,?,?);ps.setInt(1, cb.getStuid();ps.setString(2, cb.getStubirth();ps.setString(3, cb.getStu

39、identity();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 flag;2.4.6.普通用户登录界面2.4.7.个人事务管理登录界面2.4.8.生活委员管理特殊权限程序代码说明:package .dao;import java.sql.Connection;imp

40、ort 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 ActivityDao public List queryAllActivity()List list = new LinkedList();Connection conn = DB

41、Connection.getConnection();try PreparedStatement ps = conn.prepareStatement(select * from shwy);ResultSet rs = ps.executeQuery();while (rs.next() ShwyBean scb= new ShwyBean();scb.setId(rs.getInt(id);scb.setTime(rs.getString(time);scb.setAddr(rs.getString(addr);scb.setStunum(rs.getInt(stunum);scb.set

42、Startmoney(rs.getDouble(startmoney);scb.setExpense(rs.getDouble(expense);scb.setEndmoney(rs.getDouble(endmoney);scb.setActmeaning(rs.getString(actmeaning);scb.setActresult(rs.getString(actresult);list.add(scb); catch (SQLException e) e.printStackTrace();finallytry conn.close(); catch (SQLException e

43、) e.printStackTrace();return list;public int deleteArrInfo(int id)Connection conn = DBConnection.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.printStackTra

44、ce();finallytry conn.close(); catch (SQLException e) e.printStackTrace();return 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,actmeani

45、ng,actresult) values(?,?,?,?,?,?,?,?);ps.setString(1, cb.getTime();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.exe

46、cuteUpdate();conn.close(); catch (SQLException e) e.printStackTrace();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.execut

47、eQuery();while (rs.next() sb = new ShwyBean();sb.setId(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);sb.setActmeaning(rs.getS

48、tring(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 ps = con

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论