




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大连交通大学信息工程学院数据库课程设计题 目 学生公寓管理系统 学生姓名 张晓曈 专业班级 软件工程08-3 指导教师 李孝贵 职称 助教 所在单位 电气工程系 教学部主任 李峻 完成日期 2010年12月09日附件二课程设计说明书的编写规范与写作框架目 录题目:11.需求分析12.数据库概要设计33.数据库逻辑设计44.数据库实施65.系统实现(附运行界面、主要代码)76.测试结果15参考文献16附录 全部代码1题目:学生公寓管理系统设计与实现1.需求分析 (1) 背景分析随着时代的发展,计算机技术越来越深入各行各业,为广大的用户提供了更为周到和便捷的服务。近年来,随着用户要求的不断提高及计
2、算机科学的迅速发展,特别是数据库技术的广泛应用,向用户提供的服务将越来越丰富,越来越人性化。 对于学校而言,学生宿舍管理是必不可少的组成部分。目前仍然存在有学校停留在宿舍管理部门人员手工记录数据的阶段,手工记录对于规模小的学校来说勉强可以接受;但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的,而且当查找某条记录时,由于数据量庞大,只能依靠人工去一条一条地查找,这样不但麻烦而且浪费许多时间,工作效率比较低。采用计算机来管理宿舍和学生的信息,大大提高了查询的速度,节约了人力和物力资源,达到了预期的要求。. 经分析我们认为学生公寓管理系统的具体要求为:1. 能以学生
3、和管理员两种身份登录;2. 学生能查询所在寝室的信息;3. 管理员能查询所有寝室的信息,包括学生信息,空房信息,空床信息,寝室维修情况信息等;4. 管理员能添加、删除、修改学生及寝室信息;5. 管理员能对外来人员及不回寝的同学进行登记并查看;(2)数据流程图学生管理员查询插入修改删除登记报修卫生纪律评比违规登记登录(3)数据字典数据元素数据类型长度数据来源寝室号Varchar26公寓表位置Varchar26公寓表室长Varchar26公寓表人数Varchar22公寓表管理员号Varchar26管理员表 管理员姓名Varchar210管理员表出生日期Varchar210管理员表电话Varchar
4、220管理员表工作周期Varchar210管理员表用户号Varchar210密码表密码Varchar220密码表身份Varchar28密码表学号Varchar210寝室表学生姓名Varchar26寝室表寝室号Varchar26寝室表床号Varchar22寝室表值日Varchar210寝室表职务Varchar24寝室表寝室号Varchar26评比表成绩Varchar26评比表月份Varchar26评比表寝室号Varchar26报修表设施Varchar220报修表时间Varchar220报修表姓名Varchar26登记表身份证号Varchar220登记表性别Varchar24登记表来时Varcha
5、r220登记表走时Varchar220登记表 学号Varchar212违规登记表 姓名Varchar220违规登记表 寝室号Varchar210违规登记表 违规行为Varchar220违规登记表2.数据库概要设计本次设计需要完成一个“学生公寓管理程序”。学生公寓管理是通过查询,修改等功能使管理员对学生公寓的管理更加简单,快捷。本系统主要包括登录、查询、管理、登记等模块 本系统需要以下模块:登录: 用户通过输入正确的用户名和密码登录。登录方式可以选择,有学生模式和管理员模式两种。如果输入的账号密码不匹配,则提示用户登录错误信息。报修: 在有寝室设施坏了的时候,学生可以上报。 查询: 用户登录成功
6、后,可以查询相关的内容。学生只能查所在寝室的信息,管理员可以查所有寝室的信息。添加: 在有新同学入住时,管理员可以对学生信息进行添加。修改: 在有同学调换寝室时,管理员可以对学生信息进行修改。删除: 在有同学退宿时,管理员可以对学生信息进行删除。登记: 在有外来人员进入时或有有同学请假不回寝时,管理员可以对其相关信息进行登记。卫生评比:每月对寝室进行一次卫生检查,并进行评比。违规登记:对有违规行为的学生进行登记。退出登录: 退出用户登录。E-R图:公寓寝室管理管理员录入包含报修录入评比登记外来人员记录违规同学寝室号位置室长人数管理员号管理员姓名电话出生日期工作周期床号学生姓名学号值日职务寝室号
7、寝室号成绩月份寝室号时间设施走时来时身份证号姓名姓名性别学号寝室号违规行为1nnn1n1n1n1n3.数据库逻辑设计由E-R图转化成关系模型为:公寓(寝室号,位置,室长,人数)管理员(管理员号,管理员姓名,出生日期,电话,工作周期)寝室(寝室号,学生姓名,学号,床号,值日,职务)评比(寝室号,成绩,月份)报修(寝室号,设施,时间)登记(身份证号,姓名,性别,来时,走时) 违规(学号,姓名,寝室号,违规行为)包含(寝室号,学生姓名,学号,床号,值日,职务)录入(寝室号,学号)4. 数据库实施公寓表:名称字段名称数据类型主键非空寝室号DNO数字YesYes位置POSITION文本NoYes室长D_
8、G_NAME文本NoYes人数AMOUNT数字NoYes管理员表:名称字段名称数据类型主键非空管理员号ANO数字YesYes管理员姓名ANAME文本NoYes出生日期BIRTH数字NoYes电话TEL数字NoYes工作周期W_PERIOD文本NoYes密码表:名称字段名称数据类型主键非空用户号CNO数字YesYes密码CODE文本NoYes身份SHENFEN文本NoNo寝室表:名称字段名称数据类型主键非空学生号SNO数字YesYes学生姓名SNAME文本NoYes寝室号DNO数字YesYes床号B_NO数字NoYes值日DUTY文本NoYes职务POST文本NoYes卫生评比表:名称字段名称数
9、据类型主键非空寝室号DNO数字YesYes成绩SCORE文本NoYes月份MONTH文本YesYes报修表:名称字段名称数据类型主键非空寝室号DNO数字YesYes设施SHESHI文本NoYes时间TIME数字NoYes登记表:名称字段名称数据类型主键非空姓名xingming文本NoYes身份证号shenhao数字YesYes性别xingbie文本NoYes来时laishi文本NoYes走时zoushi文本NoYes违规表名称字段名称数据类型主键非空学号SNO数字YESYES姓名SNAME文本NOYES寝室号DNO数字YESYES行为XINGWEI备注NOYES5. 系统实现(附运行界面、主要
10、代码)(1)首先进入登录: 然后选择身份登录,这里选学生登录:选择管理员登录: 主界面的设计编码:public class Login extends Frame implements ActionListener private Panel pan; private Label l1,l2; private TextField tfname,tfpass; private Button butlogin; private Choice choice;Login(String s) super(s); this.setBounds(350,300,600,700); this.setResiz
11、able(false); pan = new Panel(); Imagecanvas canvas=new Imagecanvas(); l1 = new Label("用户名"); choice=new Choice(); tfname = new TextField(10); l2 = new Label("密 码"); tfpass = new TextField(10); choice.add("请选择身份"); choice.add("学生"); choice.add("管理员");
12、 add(choice); butlogin= new Button("登陆"); butlogin.addActionListener(this); pan.add(l1); pan.add(tfname); pan.add(l2); pan.add(tfpass); pan.add(choice); pan.add(butlogin); pan.add(canvas); this.add(pan); this.setVisible(true); public void actionPerformed(ActionEvent e) Connection con; Stat
13、ement sql; ResultSet rs; try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e1) System.out.println(""+e1); trycon=DriverManager.getConnection("jdbc:odbc:sun","SYSTEM","huahua"); sql=con.createStatement(); rs=sql.executeQu
14、ery("SELECT * FROM SYSTEM.CODE"); while(rs.next() String cno=rs.getString(1); String code=rs.getString(2); String shenfen=rs.getString(3); if(tfname.getText().equals(cno)&&tfpass.getText().equals(code)&&choice.getSelectedItem().equals(shenfen)&&choice.getSelectedIte
15、m().equals("学生") this.setVisible(true); new NewFrame(); else if(tfname.getText().equals(cno)&&tfpass.getText().equals(code)&&choice.getSelectedItem().equals(shenfen)&&choice.getSelectedItem().equals("管理员") this.setVisible(true); new OldFrame(); con.close()
16、; catch(SQLException e2) System.out.println(e2); public static void main(String args) Imagecanvas canvas=new Imagecanvas(); Login l=new Login("学生公寓欢迎您"); l.add(canvas,BorderLayout.CENTER); l.setIconImage(canvas.getImage(); l.addWindowListener(new WindowAdapter() public void windowClosing(W
17、indowEvent e) System.exit(0); ); 学生登录模块的设计编码:class NewFrame extends Frame implements ActionListener Button button1,button2; Box baseBox,box1,box2; public NewFrame() button1=new Button("报 修"); button1.setForeground(Color.yellow); button1.setBackground(Color.magenta); button1.addActionListen
18、er(this); button2=new Button("查 询"); button2.setForeground(Color.yellow); button2.setBackground(Color.blue); button2.addActionListener(this); box1=Box.createVerticalBox(); box1.add(button1); box2=Box.createVerticalBox(); box2.add(button2); baseBox=Box.createHorizontalBox(); baseBox.add(box
19、1); baseBox.add(Box.createHorizontalStrut(10); baseBox.add(box2); add(baseBox); setLayout(new FlowLayout(); this.setBounds(300,300,200,100); this.setTitle("学生操作"); this.setAlwaysOnTop(true); this.setVisible(true); this.addWindowListener(new WindowAdapter() public void windowClosing(WindowE
20、vent e) System.exit(0); ); 管理员登录模块的设计编码:class OldFrame extends Frame implements ActionListener private Button b2,b3,b4,b5,b6,b7,b8; Box baseBox,box1,box2; public OldFrame() b2=new Button("查 询"); b2.setForeground(Color.yellow); b2.setBackground(Color.gray); b2.addActionListener(this); b3=ne
21、w Button("删 除"); b3.setForeground(Color.yellow); b3.setBackground(Color.magenta); b3.addActionListener(this); b4=new Button("修 改"); b4.setForeground(Color.yellow); b4.setBackground(Color.blue); b4.addActionListener(this); b5=new Button("插 入"); b5.setForeground(Color.yel
22、low); b5.setBackground(Color.red); b5.addActionListener(this); b6=new Button("违 规 登 记"); b6.setForeground(Color.yellow); b6.setBackground(Color.blue); b6.addActionListener(this); b7=new Button("卫生纪律评比"); b7.setForeground(Color.yellow); b7.setBackground(Color.red); b7.addActionLis
23、tener(this); b8=new Button("登 记"); b8.setForeground(Color.yellow); b8.setBackground(Color.black); b8.addActionListener(this); box1=Box.createVerticalBox(); box1.add(b2); box1.add(Box.createVerticalStrut(8); box1.add(b3); box1.add(Box.createVerticalStrut(8); box1.add(b4); box2=Box.createVerticalBox(); box2.add(b5); box2.add(Box
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外语沟通技巧分析试题及答案
- 数据保护法在审计中的应用试题及答案
- 中级审计师提升路径与试题及答案的重视
- 优化复习计划审计师试题及答案
- 入团考试营造氛围试题及答案
- 中级会计学习班试题及答案
- 2025年入团学习心得试题及答案
- 2025年建造师考试的职场价值与试题及答案
- 2025年中级会计外部考试试题及答案
- 2024年中级审计师考试轻松应对试题及答案
- 职业道德与法律第一课第一节课件市公开课一等奖省赛课微课金奖课件
- 部编人教版《道德与法治》九年级下册教案(全册)
- 2024中国南水北调集团东线有限公司招聘笔试参考题库含答案解析
- 2024春期国开电大思政课《中国近现代史纲要》在线形考(专题检测一至八)试题及答案
- 2024年上海市行政执法类公务员招聘笔试参考题库附带答案详解
- 全过程工程咨询服务项目管理服务方案
- 复方氨基酸注射液(17AA-II)-临床用药解读
- 贫血中医辨证分析
- PLC的故障排除与维护技巧与方法
- 2019版新人教版高中英语必修+选择性必修共7册词汇表汇总(带音标)
- 跨行业合作与创新
评论
0/150
提交评论