托管培训中心信息管理系统课设报告Word格式文档下载.docx

上传人:b****5 文档编号:19289138 上传时间:2023-01-05 格式:DOCX 页数:14 大小:287.68KB
下载 相关 举报
托管培训中心信息管理系统课设报告Word格式文档下载.docx_第1页
第1页 / 共14页
托管培训中心信息管理系统课设报告Word格式文档下载.docx_第2页
第2页 / 共14页
托管培训中心信息管理系统课设报告Word格式文档下载.docx_第3页
第3页 / 共14页
托管培训中心信息管理系统课设报告Word格式文档下载.docx_第4页
第4页 / 共14页
托管培训中心信息管理系统课设报告Word格式文档下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

托管培训中心信息管理系统课设报告Word格式文档下载.docx

《托管培训中心信息管理系统课设报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《托管培训中心信息管理系统课设报告Word格式文档下载.docx(14页珍藏版)》请在冰豆网上搜索。

托管培训中心信息管理系统课设报告Word格式文档下载.docx

备注

Mno

Varchar

管理员编号

Mname

管理员姓名

Mpassword

登陆密码

2.学生表

Student

Sno

学生编号

Sname

学生姓名

Spassword

3.教师表

Teacher

Tno

教师编号

Tname

教师姓名

Tlevel

教师等级

Tcharacter

教师特点

4.课程表

Course

Cno

课程号

Cname

课程名

教师号

Cneed_Student

Int

招生人数

Class_Time

学时

Ccycle

课程周期

Caddr

上课地点

Camount

int

学费

5.账目表

SC_Amount

学生号

My_Amount

交费金额

SC_Amount_Time

Date

交费时间

五.实验设计

1.概要结构设计

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.物理结构设计

管理员表:

CREATETABLEManager

(MnoVarchar(5)primarykey,

   MnameVarchar(20)notnull,

MpasswordVarchar(20)notnull

);

学生表:

CREATETABLEStudent

(SnoVarchar(5)primarykey,

SnameVarchar(20)notnull,

   SpasswordVarchar(20)notnull

教师表:

CREATETABLETeacher

(TnoVarchar(5)primarykeynotnull,

TnameVarchar(20)notnull,

TlevelVarchar(10),

TcharacterVarchar(100)

课程表:

CREATETABLECourse

(CnoVarchar(5)PRIMARYKEYnotnull,

CnameVarchar(20)notnull,

TnoVarchar(5),

Cneed_Stuint,

Cclass_timeVarchar(10),

CcycleVarchar(10),

CaddrVarchar(20),

Camountint,

FOREIGNKEY(Tno)REFERENCESTeacher(Tno)

ONDELETECASCADE

账目表:

CREATETABLESC_Amount

(CnoVarchar(5),

SnoVarchar(5),

FOREIGNKEY(Cno)REFERENCESCourse(Cno)

ONDELETECASCADE,

FOREIGNKEY(Sno)REFERENCESStudent(Sno)

PRIMARYKEY(Cno,Sno),

MyAmountint,

SCamount_timeDATE

六.软件设计与实现

  1.登陆与注册界面

    登陆界面仿照QQ登陆界面,设计简单,一目了然,要求用户输入用户名和密码,界面下方有两个按钮,分别是“登陆”和“注册”。

输入用户名和密码后,点击“登陆”按钮时,判断用户名是否存在,若不存在,则弹出提示对话框;

若存在,则判断密码是否相符;

若相符,进入相应的界面;

若不相符,弹出对话框提示密码错误。

点击“注册”按钮时,弹出注册界面,要求输入姓名和密码,并要求确认密码;

当有未输入项时,弹出对话框提示输入;

若两次输入的密码不一致,弹出对话框提示重新输入;

提交成功后,弹出对话框告知学生号。

学生注册时,系统将自动生成学生号,为了防止删除时产生编号的缺失,不便于管理,系统在分配编号时,将分配给新数据当前未使用的最小编号,如:

原有0201,0202,0203,0204四个学生,管理员将0203号学生信息删除后,再有新学生来注册时,系统分配给他的学生号就是0203号,而不是0205号,这样能填补之前删除的编号缺失,保证编号的连续性。

分配学生号的代码如下:

ResultSetrsno;

Stringb[];

rsno=sql.executeQuery("

SELECTSnoFROMStudentGROUPBYSno"

rsno.last();

n=rsno.getRow();

rsno.beforeFirst();

intk=0;

b=newString[n];

while(rsno.next())

{

b[k]=rsno.getString

(1);

k++;

}

intsno=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;

登陆和注册界面如下:

2.管理员界面

   登陆到管理员界面后,窗口标题为“欢迎你,管理员某某”。

管理员界面是一个选项卡窗格,分“添加”“删除”“查询”“更新”四个选项卡,每个选项卡上有不同的图片背景和对应功能的按钮,点击按钮时会弹出不同的功能窗口,完成各种管理活动,主界面如下:

添加时,要求输入该实体的主码作为索引,弹出一个只有一行空白区表格的窗口,输入要添加的信息后,点击“确定”按钮,即可提交,领取相应的编号,若失败,弹出对话框提示添加失败;

删除时,要求输入该实体的主码作为索引,点击“确定”按钮,在下方显示要删除的信息,再点击“删除”按钮,即可删除;

若该实体不存在,则弹出对话框提示;

查询时,弹出带有表格的窗体,显示要查询的相应信息;

更新时,要求输入该实体的主码作为索引,点击“确定”按钮,在下方显示要修改的信息,再点击“修改”按钮,即可修改;

修改成功弹出对话框提示,修改失败弹出对话框提示;

若该实体不存在,弹出对话框提示;

由于添加、删除、修改窗体皆是通过表格组件实现的,所以界面在此处不一一举例,尽给出添加课程和查询欠费学生信息的界面:

3.学生界面

当软件检测到用户名为学生编号时,则自动进入学生登陆界面,窗口标题为“欢迎你,某某同学”。

当该生有未交费或费用已到期的情况时,将弹出对话框提示,该功能是通过存储过程实现的:

createorreplaceprocedureWarning(PCnoinVarchar2,

PSnoinVarchar2,

timeoutnumber)

as

PMyAmountint;

PSCamount_TimeDate;

BEGIN

SelectMyAmount,SCamount_Time

intoPMyAmount,PSCamount_Time

FromSC_Amount

WhereCno=PCnoandSno=PSno;

ifPSCamount_TimeISnullthen

time:

=30;

else

select

trunc(sysdate)-trunc(PSCamount_Time)

intotime

fromdual;

endif;

commit;

end;

该存储过程传入两个参数,课程号和学生号,返回一个参数,距上次交费的课程开始日期的天数,如果这个天数大于28(一般托管中心都是四周为一个月的课程),则提示“请及时交费”,存储过程调用代码如下:

CallableStatementproc=null;

for(inti=0;

{

proc=con.prepareCall("

{callWarning(?

?

)}"

proc.setString(1,b[i]);

proc.setString(2,sno);

proc.registerOutParameter(3,Types.INTEGER);

proc.execute();

intok=proc.getInt(3);

if(ok>

28)

rs=sql.executeQuery("

SELECTCnameFROMCourseWhereCno='

"

+b[i]+"

'

rs.next();

JOptionPane.showMessageDialog(button1,"

请及时交费:

+rs.getString

(1)+"

课(课程号为"

)"

"

交费通知"

JOptionPane.WARNING_MESSAGE);

}

}

学生登陆界面有两个菜单,分别是“查询”和“管理”,管理则有一个菜单项,“注销课程”,窗口中间有两个按钮,分别为“选择课程”和“自助交费”,点击“选择课程”,将弹出选课界面,学生主界面如下图:

选课界面:

在制作这个界面时,我真是下了不少的功夫,因为它要与数据库动态连接,前面的JCheckBox是通过查询得到的,而后面的JComboBox是根据前面的JCheckBox的值查询课程表得到的,所以过程有些复杂,一方面想要代码简单,另一方面又要考虑数据库在同一时刻有允许的最大连接数目,而通过实践发现同时对两个ResultSet进行操作就会出错,所以最终只能将查询到的科目存在数组中,再供它用。

我所采用的是盒式布局,科目是可以添加的,所以在查询科目个数之前无法确定盒子的个数,好在java能够用变量定义数组,于是我创建了一个盒子数组,终于实现如图效果。

可随之而来又产生了一个问题,随着科目的增加,窗体大小不够显示所有组件了,所以我又想到可以将这些盒子添加到一个滚动面板里,最后终于得到我想要的效果了。

还有一个小插曲,就是由于我添加了背景图片,没加入滚动面板时,图片能够显示,加入滚动面板后,图片就怎么都不显示了,即使我将滚动面板pane设为透明:

pane.setOpaque(false);

图片依然无法正确显示,后来通过上网查找解决方法,了解到要想让滚动面板透明,光设置面板透明是不够的,同时还要要设

pane.getViewport().setOpaque(false);

滚动条也要设置成透明:

pane.getVerticalScrollBar().setOpaque(false);

最终得到理想的效果。

部分代码如下:

JCheckBoxchbox[];

JComboBoxcbox[];

//查询Cname并将科目名存入JCheckBox类型的chbox数组的代码略

//通过JCheckBox类型的chbox数组中的Cname值获得相应的教师信息,并存入JComboBox类型的cbox数组中,代码如下:

ResultSetrs2;

Stringstr[];

for(j=0;

j<

j++)

rs2=sql.executeQuery("

SELECTTnoFROMCourseWHERECname='

"

+chbox[j].getText()+"

'

ORDERBYTno"

rs2.last();

m=rs2.getRow();

rs2.beforeFirst();

str=newString[m];

while(rs2.next())

str[i]=rs2.getString

(1);

i++;

for(intk=0;

k<

m;

k++)

rs2=sql.executeQuery("

SELECTTnameFROMTeacherWHERETno='

+str[k]+"

rs2.next();

str[k]=rs2.getString

(1);

cbox[j]=newJComboBox(str);

m=0;

i=0;

}

七.实验总结

通过做课程设计,我学会了许多平时学不到的知识,并且动手能力的到了大大的提升。

在本次课程设计中我了解到,要开发一个好的项目一定要先做好规划,按照软件的开发过程,详细地写好每一个必要的文档。

软件文档的最主要目标是传达一个系统的技术要素和使用方法,第二个目标是提供软件开发过程中的需求,决策,行为,角色和责任的书面记录。

在课程设计之初,我先是构思题目的E-R图,尽量使各个实体之间的关系清晰明了,减少数据冗余,构造满足第三范式的关系。

光是构思就用了三天的时间,虽然如此,当构思清晰后再动手,思路也清晰很多,编起代码来也得心应手。

通过这次课程设计,加深了我对数据库基础理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力,虽然我的程序还有很多不足,但最终实现了给定的应用要求,构造出了相对合理的数据库模式,使之能够有效地存储数据,满足了信息要求和处理要求。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 商业计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1