已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一 实验题目 托管培训中心信息管理系统 二 实验目的 数据库与信息管理课程设计 是软件工程专业集中实践性环节之一 是计算机 学科基础的一门重要的实践教学课程 是学习完 数据库概论 课程后进行的一次 全面的综合练习 其目的在于加深对数据库基础理论和基本知识的理解 掌握使用 数据库进行软件设计的基本方法 提高运用数据库解决实际问题的能力 最终实现 对于给定的应用要求 构造最优的数据库模式 建立数据库及其应用系统 使之能 够有效地存储数据 满足各种用户的应用需求 信息要求和处理要求 三 实验要求 1 处理学生报名 根据学生报名的科目查询科目信息 如果该科目已经满员 则提醒学员 如 果该科目没有满员 则让用户选择相应的教师 并报名登记 交纳学费 2 维护科目 开设不同的科目 同一门课程根据教师的知名度 向学生收取不同的费用 3 安排教室及上课日程 根据教师及学生信息确定某个科目的上课地点及时间 并形成学生的课表 4 管理帐目 收取学费并入帐 催交费用等 四 需求分析 托管培训中心信息管理系统 有两类用户 一是培训中心的管理者 可添加 删除 修改 查询学生信息 课程信息 账 目信息等 是托管中心信息管理系统的最高权力者 添加 删除 修改时 若遇到 类型不匹配或破坏了数据库完整性 应弹出相应的提示对话框 查询时 应尽量使 信息一目了然 另一个用户则是学生用户 学生可查询课程信息 教师信息 个人课表和个人 账目信息 可选课并自助交费 选课时 让学生选择课程和教师 若该课程人数已 满 则提示报名人数已满 若该生已经选择该课程 也提示您已经选择了该课程 力争使软件的操作性友好 为了便于管理 管理员编号为以 00 开头的四位数字 教师编号为以 01 开头的四位数字 学生编号为以 02 开头的四位数字 这样在登陆时 系统就可 以通过判断编号类型 调用不用的界面 当有学生注册或添加教师或课程时 系统将自动生成学生号 教师号 课程号 为了防止删除时产生编号的缺失 系统在分配编号时 将分配给新数据当前未使用 的最小编号 填补之前删除的数据的空白 这样就能保证编号的连续性 2 数据字典 1 管理员表 表名 Manager 字段名类型备注 MnoVarchar管理员编号 Mname Varchar 管理员姓名 Mpassword Varchar 登陆密码 2 学生表 表名 Student 字段名类型备注 SnoVarchar学生编号 Sname Varchar 学生姓名 Spassword Varchar 登陆密码 3 教师表 表名 Teacher 字段名类型备注 TnoVarchar教师编号 Tname Varchar 教师姓名 Tlevel Varchar 教师等级 Tcharacter Varchar 教师特点 4 课程表 表名 Course 字段名类型备注 CnoVarchar课程号 Cname Varchar 课程名 Tno Varchar 教师号 Cneed Student Int 招生人数 Class Time Varchar 学时 Ccycle Varchar 课程周期 Caddr Varchar 上课地点 Camount int 学费 5 账目表 表名 SC Amount 字段名类型备注 CnoVarchar课程号 Sno Varchar 学生号 My AmountInt交费金额 SC Amount TimeDate交费时间 3 五 实验设计 1 概要结构设计 教师 教师特长 教师等级 教师姓名 教师号 学生 姓名学生号密码 课程 课程名 学时上课周期 上课地点 课程号 招收人数 教师号 费用 账目 课程号 学生号费用 交费时间 学生 选择 课程教师 教学 费用 4 学生 姓名学生号密码 选择 课程 课程名 学时 上课周期 上课地点 课程号招收人数 教师 教师特长 教师等级 教师姓名 教师号 账目 课程号学生号 费用 教学 费用 交费时间 教师号 费用 2 逻辑结构设计 管理员表 Manager Mno Mname Mpassword 3NF 学生表 Student Sno Sname Spassword 3NF 教师表 Teacher Tno Tname Tlevel Tcharacter 3NF 课程表 Course Cno Cname Tno Cneed Stu Cclass time Ccycle Caddr Camount 3NF Tno 是参照 Teacher 表的外码 账目表 SC Amount Cno Sno My Amount SC Amount Time 3NF Cno 是参照 Course 表的外码 Sno 是参照 Student 表的外码 3 物理结构设计 管理员表 CREATE TABLE Manager Mno Varchar 5 primary key Mname Varchar 20 not null 5 Mpassword Varchar 20 not null 学生表 CREATE TABLE Student Sno Varchar 5 primary key Sname Varchar 20 not null Spassword Varchar 20 not null 教师表 CREATE TABLE Teacher Tno Varchar 5 primary key not null Tname Varchar 20 not null Tlevel Varchar 10 Tcharacter Varchar 100 课程表 CREATE TABLE Course Cno Varchar 5 PRIMARY KEY not null Cname Varchar 20 not null Tno Varchar 5 Cneed Stu int Cclass time Varchar 10 Ccycle Varchar 10 Caddr Varchar 20 Camount int FOREIGN KEY Tno REFERENCES Teacher Tno ON DELETE CASCADE 账目表 CREATE TABLE SC Amount Cno Varchar 5 Sno Varchar 5 FOREIGN KEY Cno REFERENCES Course Cno ON DELETE CASCADE FOREIGN KEY Sno REFERENCES Student Sno ON DELETE CASCADE PRIMARY KEY Cno Sno MyAmount int SCamount time DATE 6 六 软件设计与实现 登陆与注册界面 登陆界面仿照 登陆界面 设计简单 一目了然 要求用户输入用户名和 密码 界面下方有两个按钮 分别是 登陆 和 注册 输入用户名和密码后 点击 登陆 按钮时 判断用户名是否存在 若不存 在 则弹出提示对话框 若存在 则判断密码是否相符 若相符 进入相应的界 面 若不相符 弹出对话框提示密码错误 点击 注册 按钮时 弹出注册界面 要求输入姓名和密码 并要求确认密 码 当有未输入项时 弹出对话框提示输入 若两次输入的密码不一致 弹出对 话框提示重新输入 提交成功后 弹出对话框告知学生号 学生注册时 系统将自动生成学生号 为了防止删除时产生编号的缺失 不 便于管理 系统在分配编号时 将分配给新数据当前未使用的最小编号 如 原 有 0201 0202 0203 0204 四个学生 管理员将 0203 号学生信息删除后 再有新学 生来注册时 系统分配给他的学生号就是 0203 号 而不是 0205 号 这样能填补 之前删除的编号缺失 保证编号的连续性 分配学生号的代码如下 ResultSet rsno String b rsno sql executeQuery SELECT Sno FROM Student GROUP BY Sno rsno last n rsno getRow rsno beforeFirst int k 0 b new String n while rsno next b k rsno getString 1 k int sno 0 i for i 0 i n i if Integer parseInt b i 200 i 1 sno 200 i 1 break if i n sno 200 n 1 7 登陆和注册界面如下 管理员界面 登陆到管理员界面后 窗口标题为 欢迎你 管理员某某 管理员界面是一 个选项卡窗格 分 添加 删除 查询 更新 四个选项卡 每个选项卡上有 不同的图片背景和对应功能的按钮 点击按钮时会弹出不同的功能窗口 完成各 种管理活动 主界面如下 添加时 要求输入该实体的主码作为索引 弹出一个只有一行空白区表格的 窗口 输入要添加的信息后 点击 确定 按钮 即可提交 领取相应的编号 若 失败 弹出对话框提示添加失败 删除时 要求输入该实体的主码作为索引 点击 确定 按钮 在下方显示要 删除的信息 再点击 删除 按钮 即可删除 若该实体不存在 则弹出对话框提 示 查询时 弹出带有表格的窗体 显示要查询的相应信息 更新时 要求输入该实体的主码作为索引 点击 确定 按钮 在下方显示要 修改的信息 再点击 修改 按钮 即可修改 修改成功弹出对话框提示 修改失 败弹出对话框提示 若该实体不存在 弹出对话框提示 由于添加 删除 修改窗体皆是通过表格组件实现的 所以界面在此处不一一 举例 尽给出添加课程和查询欠费学生信息的界面 8 3 学生界面 当软件检测到用户名为学生编号时 则自动进入学生登陆界面 窗口标题为 欢 迎你 某某同学 当该生有未交费或费用已到期的情况时 将弹出对话框提示 该 功能是通过存储过程实现的 create or replace procedure Warning PCno in Varchar2 PSno in Varchar2 time out number as PMyAmount int PSCamount Time Date BEGIN Select MyAmount SCamount Time into PMyAmount PSCamount Time From SC Amount Where Cno PCno and Sno PSno if PSCamount Time IS null then time 30 else select trunc sysdate trunc PSCamount Time into time from dual end if commit end 该存储过程传入两个参数 课程号和学生号 返回一个参数 距上次交费的课程 开始日期的天数 如果这个天数大于 28 一般托管中心都是四周为一个月的课程 则提示 请及时交费 存储过程调用代码如下 9 CallableStatement proc null for int i 0 i28 rs sql executeQuery SELECT Cname FROM Course Where Cno b i rs next JOptionPane showMessageDialog button1 请及时交费 rs getString 1 课 课程号为 b i 交费通知 JOptionPane WARNING MESSAGE 学生登陆界面有两个菜单 分别是 查询 和 管理 管理则有一个菜单项 注销课程 窗口中间有两个按钮 分别为 选择课程 和 自助交费 点击 选择课程 将弹出选课界面 学生主界面如下图 选课界面 在制作这个界面时 我真是下了不少的功夫 因 为它要与数据库动态连接 前面的 JCheckBox 是通过 查询得到的 而后面的 JComboBox 是根据前面的 JCheckBox 的值查询课程表得到的 所以过程有些复 杂 一方面想要代码简单 另一方面又要考虑数据库 在同一时刻有允许的最大连接数目 而通过实践发现 同时对两个 ResultSet 进行操作就会出错 所以最终只 能将查询到的科目存在数组中 再供它用 我所采用的是盒式布局 科目是可以添加的 所 以在查询科目个数之前无法确定盒子的个数 好在 java 能够用变量定义数组 于是我创建了一个盒子数 10 组 终于实现如图效果 可随之而来又产生了一个问题 随着科目的增加 窗体大小不够显示所有组件了 所以我又想到可以将这些盒子添加到一个滚动面板里 最后终于得到我想要的效果了 还有一个小插曲 就是由于我添加了背景图片 没加入滚动面板时 图片能够 显示 加入滚动面板后 图片就怎么都不显示了 即使我将滚动面板 pane 设为透明 pane setOpaque false 图片依然无法正确显示 后来通过上网查找解决方法 了解到要想让滚动面板 透明 光设置面板透明是不够的 同时还要要设 pane getViewport setOpaque false 滚动条也要设置成透明 pane getVerticalScrollBar setOpaque false 最终得到理想的效果 部分代码如下 JCheckBox chbox JComboBox cbox 查询 Cname 并将科目名存入 JCheckBox 类型的 chbox 数组的代码略 通过 JCheckBox 类型的 chbox 数组中的 Cname 值获得相应的教师信息 并存 入 JComboBox 类型的 cbox 数组中 代码如下 ResultSet rs2 String str for j 0 j n j rs2 sql executeQuery SELECT Tno FROM Course WHERE Cname chbox j getText ORDER BY Tno rs2 last m rs
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版八年级语文上册期末复习之小说阅读训练(含答案)
- 2025贵州省建筑设计研究院社会招聘25人笔试历年参考题库附带答案详解
- 2025年老年人智能生活辅助系统开发项目可行性研究报告及总结分析
- 2025年乡村旅游扶贫开发项目可行性研究报告及总结分析
- 华润置地中央公园上海城市湖居大盘内部推介手册
- 2025年国家护士执业资格考试实务操作模拟(含答案)
- 2026年云南林业职业技术学院单招职业倾向性测试必刷测试卷及答案解析(名师系列)
- 2026年宁夏工商职业技术学院单招职业适应性考试题库及答案解析(名师系列)
- 2026年厦门东海职业技术学院单招职业适应性考试必刷测试卷附答案解析
- 2026年山东商务职业学院单招职业技能测试必刷测试卷附答案解析
- 国家开放大学《Web开发基础》形考任务实验1-5参考答案
- 水利工程设计行业技术创新研究
- 河南科学技术出版社小学信息技术六年级上册教案
- 输变电工程施工质量验收统一表式附件1:线路工程填写示例
- 2023版马原专题课件:专题一马克思主义观;专题二辩证唯物主义世界观
- 砌块砌体施工课件
- Chinese Farming Civilization智慧树知到答案2024年东北农业大学
- 剖宫产术后快速康复专家共识解读(ERAC)
- 销售薪酬设计与绩效考核完全指南:理念、方法、技巧
- 老子二章完整版本
- DB-T29-279-2020天津市城市轨道交通结构安全保护技术规程
评论
0/150
提交评论