实验选课系统oracle课程设计报告附源代码.docx

上传人:b****4 文档编号:24473521 上传时间:2023-05-27 格式:DOCX 页数:17 大小:254.97KB
下载 相关 举报
实验选课系统oracle课程设计报告附源代码.docx_第1页
第1页 / 共17页
实验选课系统oracle课程设计报告附源代码.docx_第2页
第2页 / 共17页
实验选课系统oracle课程设计报告附源代码.docx_第3页
第3页 / 共17页
实验选课系统oracle课程设计报告附源代码.docx_第4页
第4页 / 共17页
实验选课系统oracle课程设计报告附源代码.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

实验选课系统oracle课程设计报告附源代码.docx

《实验选课系统oracle课程设计报告附源代码.docx》由会员分享,可在线阅读,更多相关《实验选课系统oracle课程设计报告附源代码.docx(17页珍藏版)》请在冰豆网上搜索。

实验选课系统oracle课程设计报告附源代码.docx

实验选课系统oracle课程设计报告附源代码

数学与计算机学院

课程设计说明书

课程名称:

大型数据库-课程设计

课程代码:

8424141

题目:

实验选课系统

年级/专业/班:

学生姓名:

学  号:

开始时间:

2012年05月24日

完成时间:

2012年06月15日

课程设计成绩:

学习态度及平时成绩(30)

技术水平与实际能力(20)

创新(5)

说明书撰写质量(45)

总分(100)

指导教师签名:

年月日

1引言

1.1问题的提出

传统的手工选课不仅复杂,也牵涉了很多的人力,对管理也造成了诸多不变,而借助网上选课系统,学生在规定选课时间段内,可以不受地点和时间的限制完成选修课的申请,而学校也可以方便地对系统进行管理和控制,提高工作效率。

这个选课系统,能够减轻在实验选课管理方面的负担,要真正的对实验课程进行管理,这个程序还不够,需要完善该系统。

1.2国内外研究的现状

用软件代替手工操作作已成为趋势,现在国外的智能化、自动化遥遥领先我国。

在IT这行里,由于计算机起步于国外,在文档、软件规范和标准上大部分都遵循国外的。

现在我国大部分高校已实现网上选课。

1.5任务与分析

这个系统主要是开发一个实验课选课系统,用户有三类,学生,教师,管理员。

学生可以选择实验课程,退选实验课程,可以注册,教师可以给学生上成绩,可以查看自己班上的学生,可以查询学生成绩,管理员可以删除、更新学生,教师,实验课程信息。

用oracle做后台数据库,存储数据,用javaweb采用B/S结构实现与用户的交互。

在登录验证页面,实现不同的用户跳转到不同的页面,实现不同的操作权限。

程序的主要功能

2.1添加功能

添加一个学生的基本信息,包括姓名,学号,性别,学院,班级,密码。

2.2删除功能

能够对一个学生的信息进行删除按学号进行删除。

能够对一个教师的信息进行删除按职工号进行删除

能够对一个课程的信息进行删除按课程号进行删除

2.3删除全部职员信息

能够对于全部职员的信息进行删除!

2.4显示功能

显示所有学生的主要信息包括姓名,学号,性别,学院,班级!

显示所有教师的主要信息包括姓名,职工号,性别,学院

显示所有课程的主要信息包括课程名,课程号,上课教师,学分

2.5查找功能

根据你键入的学生姓名、学号,显示其详细信息!

根据你键入的教师姓名、职工号,显示其详细信息!

根据你键入的课程名、课程号,显示其详细信息!

2.6修改功能

对学生的信息进行修改。

对浇水的信息进行修改。

对课程的信息进行修改。

3程序运行平台

Netbeans7.1、jdk1.7

具体操作如下:

新建……项目,添加相应的源文件……,再编译,执行等。

 

4总体设计

图1.1系统总体框架图

数据库表结构

一共建有三个表,student表,course表,studentcourse表administrator表

Student表adminid,adminname,adminpass主键是adminid

Course表coourseid,coursename,teacher,couesdesc,credit,teacherid主键是courseid

Administrator表创建语句:

CREATETABLEADMINISTRATOR

ADMINIDVARCHAR2(20)NOTNULL,

ADMINNAMEVARCHAR2(20),

ADMINPASSVARCHAR2(20)

CONSTRAINTADMINISTRATORS_PKPRIMARYKEY

ADMINID

ENABLE

);

course表创建语句:

CREATETABLECOURSE

COURSEIDVARCHAR2(20)NOTNULL,

CREDITVARCHAR2(20),

COURSENAMEVARCHAR2(20),

TEACHERVARCHAR2(20),

COURSEDESCVARCHAR2(20),

TEACHERIDVARCHAR2(20)

CONSTRAINTCOURSES_PKPRIMARYKEY

COURSEID

ENABLE

;

TEACHERS表创建语句:

CREATETABLETEACHER

TEACHERIDVARCHAR2(20)NOTNULL,

TEACHERNAMEVARCHAR2(20),

SEXVARCHAR2(20),

PASSWORDVARCHAR2(20),

COLLEGEVARCHAR2(20)

CONSTRAINTTEACHERS_PKPRIMARYKEY

TEACHERID

ENABLE

;

5程序说明

∙Student类的声明

packagestudent.beans;

publicclassStudent{

privateStringstuNum;//学号

privateStringstuName;//姓名

privateStringstuCollege;//学院

privateStringstuClass;//班级

privateStringstuPass;//密码

privateStringsex;//性别

publicStudent()//构造函数

{}

publicStudent(StringstuNum,StringstuName,StringstuCollege,

StringstuClass,StringstuPass,Stringsex){

super();

this.stuNum=stuNum;

this.stuName=stuName;

this.stuCollege=stuCollege;

this.stuClass=stuClass;

this.stuPass=stuPass;

this.sex=sex;

}

publicStudent(StringstuNum,StringstuName,StringstuCollege,

StringstuClass,Stringsex){

super();//调用父类构造函数

this.stuNum=stuNum;

this.stuName=stuName;

this.stuCollege=stuCollege;

this.stuClass=stuClass;

this.sex=sex;

}

publicStringgetStuNum(){

returnstuNum;

}

publicvoidsetStuNum(StringstuNum){

this.stuNum=stuNum;

}

publicStringgetStuName(){

returnstuName;

}

publicvoidsetStuName(StringstuName){

this.stuName=stuName;

}

publicStringgetStuCollege(){

returnstuCollege;

}

publicvoidsetStuCollege(StringstuCollege){

this.stuCollege=stuCollege;

}

publicStringgetStuClass(){

returnstuClass;

}

publicvoidsetStuClass(StringstuClass){

this.stuClass=stuClass;

}

publicStringgetStuPass(){

returnstuPass;

}

publicvoidsetStuPass(StringstuPass){

this.stuPass=stuPass;

}

publicStringgetSex(){

returnsex;

}

publicvoidsetSex(Stringsex){

this.sex=sex;}}

∙teacher类的声明

packageteacher.beans;

publicclassteacher{

privateStringteacherName;//姓名

privateStringteacherId;//教师职工号

privateStringsex;//性别

privateStringpassword//密码;

privateStringcollege;//学院

publicteacher(){}//构造函数

publicteacher(StringteacherId,StringteacherName,Stringcollege,Stringpassword,Stringsex){

this.teacherId=teacherId;

this.teacherName=teacherName;

this.sex=sex;

this.password=password;

this.college=college;

}

//对各属性赋值

publicStringgetTeacherName(){

returnteacherName;

}

publicvoidsetTeacherName(StringteacherName){

this.teacherName=teacherName;

}

publicStringgetTeacherId(){

returnteacherId;

}

publicvoidsetTeacherId(StringteacherId){

this.teacherId=teacherId;

}

publicStringgetSex(){

returnsex;

}

publicvoidsetSex(Stringsex){

this.sex=sex;

}

publicStringgetPassword(){

returnpassword;

}

publicvoidsetPassword(Stringpassword){

this.password=password;

}

publicStringgetCollege(){

returncollege;

}

publicvoidsetCollege(Stringcollege){

this.college=college;

}

}

∙admin类的声明

publicclassadmin{

privateStringadminName;//管理员用户名

privateStringadminId;//管理员编号

privateStringadminPass;//管理员密码

publicadmin(StringadminId,StringadminName){//构造函数

this.adminId=adminId;

this.adminName=adminName;

}

//设置管理员各属性

publicStringgetAdminName(){

returnadminName;

}

publicvoidsetAdminName(StringadminName){

this.adminName=adminName;

}

publicStringgetAdminId(){

returnadminId;

}

publicvoidsetAdminId(StringadminId){

this.adminId=adminId;

}

publicStringgetAdminPass(){

returnadminPass;

}

publicvoidsetAdminPass(StringadminPass){

this.adminPass=adminPass;

}

}

6模块分析

6.1添加模块

根据表的字段添加的信息,插入在表中。

图1.2

学生用户添加课程

图1.3

6.2显示模块

显示模块将输出所有学生的主要资料。

图1.4

6.3修改模块

首先由用户输入要修改的学生的id号,显示学生选课信息,然后退选课程

图1.5

6.4查找模块

图1.6

首先由用户输入要查找的课程Id或课程名,然后系统用查找函数查找,然后系统就调用输出函数,输出匹配的课程信息。

查找课程信息

6.5删除模块

首先由学生点击要退选的课程链接,然后调用退选函数,退选该课程。

图1.7

首先由管理员点击要删除的学生链接,然后调用删除函数,删除该学生的信息

管理员操作主界面

图1.8

管理员进入学生操作界面

图1.9

首先由管理员点击要删除的教师链接,然后调用删除函数,删除该教师的信息

管理员进入教师操作界面

图2.0

管理员进入课程操作界面

首先由管理员点击要删除的课程链接,然后调用删除函数,删除该课程的信息。

7系统测试

首先进入netbeans7.1,打开项目,然后进入源程序,右键项目运行即可

8结论

对自己完成的题目进行总结,包括程序的功能、创新点(与众不同的地方)及程序存在的问题和修改对策。

该系统可以管理基本的实验课管理,采用B/S结构。

但是该系统有很多不合理的地方,使用的技术也比较单一,也未考虑安全问题。

在软件开发的过程中,不必知道所有的技术知识,只需把握软件开发的一些基本知识,具体知识可查询资料获得,做课程设计就类似于开发软件的过程,一边做一边学习

通过本次课程设计的过程,我受益匪浅,就实验选课系统这个课题,我实现了连接数据库,直接对数据库进行操作,基本实现了课程设计要求的功能。

基本掌握了用javase开发一个网站的大概流程,用数据库保存用户数据的优点。

附录

packagestudent.dao;

importjava.sql.*;

publicclassDataBase{

//privatestaticfinalStringdriver="oracle.jdbc.driver.OracleDriver";

privatestaticfinalStringdriver="sun.jdbc.odbc.JdbcOdbcDriver";//使用jdbc-odbc连接oracle

privatestaticfinalStringschema="oracleAdmin";//数据库名

privatestaticfinalStringname="scott";//用户名

privatestaticfinalStringpassword="admin";//数据库用户密码

//privatestaticfinalStringurl="jdbc:

oracle:

thin:

@127.0.0.1:

1521:

oracleAdmin";

privatestaticfinalStringurl="jdbc:

odbc:

oracleAdmin";//数据库url

privateConnectioncon;

privateStatementst;

publicDataBase()

{

try

{

Class.forName(driver);System.out.println("正在加载驱动");/加载驱动

con=DriverManager.getConnection(url,name,password);System.out.println("获取连接");//获取连接

st=con.createStatement();System.out.println("得到sql语句");

}

catch(ClassNotFoundExceptioncnfe)

{

cnfe.printStackTrace();

}

catch(SQLExceptionsqle)

{

sqle.printStackTrace();

}

}

publicintexecuteUpdate(Stringsql)throwsSQLException//执行更新操作

{

returnst.executeUpdate(sql);

}

publicResultSetexecuteQuery(Stringsql)throwsSQLException

{

returnst.executeQuery(sql);

}

}

附录2

软件使用说明

首先进入netbeans7.1,打开项目,然后进入源程序,右键项目运行即可

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

当前位置:首页 > 经管营销 > 人力资源管理

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

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