软件工程学生选课系统课程设计.docx
《软件工程学生选课系统课程设计.docx》由会员分享,可在线阅读,更多相关《软件工程学生选课系统课程设计.docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程学生选课系统课程设计 网上选课系统课程设计手册 团队: 学校: 队长: 时间:2014 目 录 1. 项目概述 3 1.1开发背景 3 1.2 开发目的 3 1.3 开发运行境 3 1.4 系统功能 3 2.需求分析 3 2.1 系统需求 3 2.2 功能需求 3 2.3 业务流图 3 3.总体设计 4 3.1 基本设计概念和处理流程 4 3.2 系统层次模图 4 3.3系统层次模块图 4 3.4模块设计 5 4.数据库计 5 4.1 数据库的逻辑设计 5 4.2数据库的配置6 5. 具体设计 8 5.1 学生登录模块的设计与实现 8 5.2 学生注册模块的设计与实现 9 5.3 学生
2、查询模块的设计与实现9 5.4 学生选课模块的设计与实现10 6 测试及提交 10 1.项目概述 1.1 开发背景 Internet的飞速发展深刻地影响了人们的日常生活和商业运作方式。人们打开网页阅读当天的新闻,发电子邮件给远方的挚友,运用搜寻引擎查找资料,进入网上商城购买商品这一切都是在运用Internet。社会的方方面面渗透着互连网的应用,使得一向烦琐的手工程序变得便利,快捷,而学校网上选课系统正是基于这一思想而发展起来的。 1.2 开发目的 传统的手工选课不仅困难,也牵涉了许多的人力,对管理也造成了诸多不变,而借助网上选课系统,学生在规定选课时间段内,可以不受地点和时间的限制完成选修课的
3、申请,而学校也可以便利地对系统进行管理和限制,提高工作效率。1.3 开发运行环境: 开发工具:java语言 开发环境:JDK 1.4 系统功能: (1) 登录、注册功能. (2) 选课功能 (3) 查询功能 2.需求分析 2.1 系统需求 用户的需求详细体现在各种学习成果的供应、保存、更新和查询方面,这就要求数据库结构能充分满意各种信息的输入和输出。收集基本数据、数据结构及数据处理的流程,组成一份详尽数据字典,为后面的详细设计打下基础。2.2 功能需求 通过系统功能分析,针对一般的网上选课系统,总结出如下的需求信息: (1) 学生的需求:网上选课、选课状况查询; (2) 本系统主要实现学生信息
4、管理和选课查询。学生信息包括学号、姓名、班级; 课程信息包括课程名; 2.3 业务流程图 学生 登录 选课 查询课程 系统 管理员 选课信息 3.总体设计 3.1 基本设计概念和处理流程 互联网技术的飞速发展,Java等设计工具的便利好用,以及数据库技术的发展给本系统的设计和实现供应了技术上的支持。系统基本的流程是:用户登录>主界面>选择各项子系统。3.2 系统层次模块图 学生选课系统 登陆/注册 选课 查询 数据库的设计 3.3系统层次模块图 3.4模块设计 (1) 用户注册模块:填写用户名、密码、确认密码 (2) 用户登录模块:填写已注册的用户名称,填写正确的密码,进入主限制页
5、面。(3) 用户选课模块:。 (4) 用户查询模块:可以进行查看所选课程的操作。 4.数据库设计 4.1 数据库的逻辑设计 我们选用了Microsoft Access 2000。 数据通信接口采纳ODBC。ODBC是微软开发的一套读取数据库的解决方案,它的目的是将全部对数据库的底层操作全部隐藏在ODBC的驱动程序内核里。对于程序员来说,只要构建了一个指向数据库的连接,就可以采纳统一的应用程序编程接口实现对数据库的读写。目前ODBC驱动已经供应了对大多数常见类型数据库的支持,包括dBase,Informix,Access,SQL Server和Oracle等。也包括了对其它类型的数据库的支持,如
6、文本,Excel电子表格等的支持。依据系统功能设计的要求以及功能模块的划分,对于系统信息数据库,可以列出以下数据项和数据结构: 1. 名称:用户信息表 表名称标识:login 名称 字段名称 数据类型 主键 非空 用户名 UserName 文本 No Yes 密码 Password 文本 No No 记录: 2.名称:课程信息表 表名称标识:kechengbiao 名称 字段名称 数据类型 主键 非空 学号 number 数字 No Yes 姓名 name 文本 No No 课程名称 lesson 文本 No No 记录: 4.2数据库的配置 一个真正的、完整的站点是离不开数据库的。ODBC为
7、应用程序供应了一种标准方法来操作相关的数据库:管理器依据数据源供应的数据库的位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与详细数据库的联系。这样,只要应用程序将数据源名供应给ODBC,ODBC就能建立起与相应数据库的连接。按如下步骤可以建立一个新的系统数据源。首先,在限制面板中双击ODBC图标,打开“ODBC数据源管理器”对话框,选择“系统DSN”选项卡,单击“添加”按钮。如下图所示。 在“创建新数据源”对话框中,选择“Driver do Microsoft Access(*.mdb)”作为数据库驱动程序并单击“完成”按钮。如下图所示。 在“ODBC Microsoft Acces
8、s安装”对话框中,数据源名称填写为“student”,这是程序中将要引用的。单击“选择”按钮,从弹出的文件窗口中选择student.mdb文件所在的位置。如下图所示。 然后单击“确定”按钮,这样就完成了Access数据库的ODBC数据源设置。 以上步骤,通过ODBC管理器注册了一个名字为student的数据源,并且指定了数据库的驱动程序。5. 具体设计 5.1 学生登录模块的设计与实现 5.1.1. 登录模块 功能:本模块主要用于对用户身份进行鉴别。用户通过表单供应用户名和密码信息,系统依据用户供应的登录信息对用户进行身份查询鉴别。假如身份合法,则将用户导向系统的选课页面。输入:用户名、密码
9、处理: (1) 输入用户的登录信息:在页面供应的表单出输入用户的用户名和密码信息,点击“登录”按钮提交表单信息到身份验证页面。或点击“重置”按钮,重新输入。 (2) 用户身份进行验证:连接数据库,打开用户数据表login,检验用户登录信息。以输入数据“用户名”为查询条件创建数据集查看输入用户名是否存在。假如存在,接着检验输入的密码是否正确。密码和用户名都正确,则进入选课页面;假如用户名不存在或密码不正确,则给出登录失败的提示框。 输出:学生选课页面 5.1.2学生登录页面图如下图所示: 5.2 学生注册模块的设计与实现 5.3 学生查询模块的设计与实现 5.4 学生选课模块的设计与实现 6 测
10、试及提交 7 项目小组成员及具体分工 工作任务 徐寒亭 胡中涛 卢文琳 李爽 需求分析 数据库的设计 查询功能 选课功能 登陆注册功能 查询模块 注册登录模块 数据库设计模块 选课模块 8 附:模块源代码 (1)登录模块 import java.awt.*; import java.awt.event.*; import javax.swing.JOptionPane; import java.sql.*; public class Login extends Frame implements ActionListener Frame f,f1; Button b1; Button b2; B
11、utton b3; TextField t1; TextField t2; Label l1; Label l2; Connection con; Statement sql; /声明Statement对象 ResultSet rs; public Login() f=new Frame(“学生选课系统“); Toolkit tool=f.getToolkit(); Dimension dim=tool.getScreenSize(); f.setBounds(0,0,dim.width,dim.height); Panel p=new Panel(); f.add(p); l1=new La
12、bel(“用户名“); l2=new Label(“密码“); t1=new TextField(20); t2=new TextField(20); b1=new Button(“登陆“); b2=new Button(“取消“); b3=new Button(“注册“); p.add(l1); p.add(t1); p.add(l2); p.add(t2); p.add(b1); p.add(b2); p.add(b3); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this);
13、f.setVisible(true); t2.setEchoChar(*); f.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); public void actionPerformed(ActionEvent e) if(e.getSource()=b1) if(t1.getText().equals(“)|t2.getText().equals(“) JOptionPane.showMessageDialog(null,“输入不能为空!“); e
14、lse try Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver“); catch(ClassNotFoundException a) System.out.println(“+a); try con=DriverManager.getConnection(“jdbc:odbc:sun“,“,“); sql=con.createStatement(); rs=sql.executeQuery(“Select * FROM login“); /查询数据库 boolean check = false; while(rs.next() String UserNa
15、me=rs.getString(1); /获得数据库其次列 String Password=rs.getString(2); /获得数据库第三列 if(t1.getText().equals(UserName) t2.getText().equals(Password) /推断语句 check = true; JOptionPane.showMessageDialog(null,“登陆胜利!“); f.dispose(); new WindowBox(“选课窗口“); t1.setText(“); t2.setText(“); break; if(check = false) JOptionP
16、ane.showMessageDialog(null,“登陆失败,请重新输入!“); con.close(); catch(SQLException el) if(e.getSource()=b2) t1.setText(“); t2.setText(“); if(e.getSource()=b3) f.dispose(); new Regist(“学生选课系统注册界面“); public void windowClosing(WindowEvent e) System.exit(0); public static void main(String args) new Login(); (2)
17、注册模块 import java.awt.*; import java.awt.event.*; import javax.swing.JOptionPane; import java.sql.*; class Regist extends Frame implements ActionListener Label lb1, lb2, lb3; TextField tf1, tf2, tf3; Button bt1, bt2, bt3; Regist(String s) super(s); setLayout(null); setBounds(0,0,900,900); setVisible(
18、true); setResizable(false); lb1 = new Label(“用户名“); lb1.setBounds(150,100,50,20); lb2 = new Label(“密码“); lb2.setBounds(150,200,50,20); lb3 = new Label(“确认“); lb3.setBounds(150,300,50,20); tf1 = new TextField(); tf1.setBounds(200,98,200,20); tf2 = new TextField(); tf2.setBounds(200,198,200,20); tf2.s
19、etEchoChar(*); tf3 = new TextField(); tf3.setBounds(200,298,200,20); tf3.setEchoChar(*); bt1 = new Button(“注册“); bt1.setBounds(200,400,100,40); bt2 = new Button(“返回“); bt2.setBounds(350,400,100,40); bt3 = new Button(“退出“); bt3.setBounds(435,400,100,40); add(lb1); add(lb2); add(lb3); add(tf1); add(tf
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 学生 选课 系统 课程设计
限制150内