javaEE_学生个人成绩管理系统

  • 格式:doc
  • 大小:225.55 KB
  • 文档页数:20

课程设计报告书 课程名称 java EE课程设计 设计题目 学生个人成绩管理系统 专业班级 国际专2010 学 号 ************ 姓 名 吴威威 指导教师 王峰

2012年 11 月 目 录 1 设计时间 ...................................................................... 3 2 设计目的 ...................................................................... 3 3 设计任务 ...................................................................... 3 3.1任务说明 ............................................................... 3 3.2系统目标 ............................................................... 3 3.3功能要求 ............................................................... 3 4 设计内容 ...................................................................... 4 4.1界面构建 ............................................................... 4 4.2详细设计 ............................................................... 4 4.2.1流程设计 ....................................................... 4 4.2.2数据库设计(sqlserver2000) ...................... 5 4.2.3运行调试 ....................................................... 6 4.2.4主要源代码 .................................................... 8 5总结与展望 ................................................................. 19 1 设计时间 2012.12.12----2012.12.18 2 设计目的 本程序用于用户对学生成绩排名进行简单的管理,本程序针对于对安全系数要求不高,操作不是很复杂的小型客户开发。本程序可以实现对学生信息的添加、查看、删除、成绩排名等操作,同时支持查看所有课程信息,功能完善,界面简洁美观,布局合理,操作简便,简单易用,任何人可轻松操作。 同时,本程序对系统要求配置较低,运行速度快,而却对数据库管理要求较低。本程序数据库采用sqlserver2000进行数据存储,该数据库可实现关系较为简单的数据管理。 3 设计任务

3.1任务说明 (一)必备功能说明: (1)功能描述:用户以合法身份登录系统后,才能进行所有操作;登录系统时,有两种权限:管理员权限和学生用户权限。管理员用户可以查看所有学生的成绩信息(假设只有一门课程),以及对所有学生的成绩进行排名;学生用户可以添加、查看和删除自己的成绩信息。 (2)添加学生成绩:学生添加成绩信息(包括学号、姓名、成绩); (3)查看学生成绩:管理员可以查看所有学生的成绩,学生用户只能查看自己的成绩; (4)删除成绩:学生可以删除自己的成绩; (5)对成绩排名:管理员对所有学生成绩进行排名。 (二)开发语言与开发环境: MyEclipse、Java、数据库 3.2系统目标 软件开发的意图便于用户对学生的管理,方便查看学生的情况。如用户对学生基本信息进行添加、查看、删除、成绩排名等。 3.3功能要求 1学生添加自己课程成绩的功能 2管理员查看所有学生课程成绩的功能 3学生查看自己课程成绩的功能 4学生删除学生课程成绩的功能 5 管理员对成绩排名的功能 4 设计内容

4.1界面构建 1、为了便于各种操作,软件采用多页面的模式。用户可在不同网页进行相应操作(录入、查询、修改、删除、显示所有信息)。 2、主页面(显示所有信息页面)是用户进行各种操作的平台,具体操作在各个独立功能页面中完成。 3、主页面的主要功能位于操作表列中,为进入各个功能窗口的唯一通道。 4、当用户在进行个别录入、删除或错误输入操作时,会弹出相应对话框提示用户。如当录入成功或删除成功,弹出成功以及相应的简明信息提示当,当录入、删除失败以及输入不当时,弹出错误以及简单的错误原因提示用户重新操作。 5、页面布局尽量合理,各组件位置分布均匀美观。 4.2详细设计

4.2.1 流程设计 本系统采用struts2框架,用到了和数据库有关的最基本的方法定义,包括增删改查等。主要Action类与页面的设计如下:

包名 类名 功能

com.actions AddStudentAction.java 添加信息 DeleteStudentAction.java 删除信息 LoginAction.java 登录验证

ModifyConfirmAction.java 确定修改

ModifyStudentAction.java 修改信息

com.bean Students.java Bean类,包含所有属性和getters及setters com.db DB.java 数据库连接类,包含所有和数据库有关的方法定义 表1:包与类定义

页面名称 作用 login.jsp 登录页面

showStudents.jsp 主要操作界面,显示所有信息和所有操作控件

modify.jsp 修改页面

Suc.jsp 修改成功页面

addStudent.jsp 添加页面

表2:页面设计

4.2.2数据库设计(sqlserver2000) 表列名 类型 长度 username varchar 50 password varchar 50 表3:管理员表设计login 图1.管理员表login 4.2.3运行调试

图2.登录前页面login.jsp 图3.登录错误界面login.jsp 图4.登录成功页面showStudents.jsp 图5.添加学生信息modify.jsp 图6.添加学生信息成功页面Suc.jsp

图7.删除学生信息deleteStudent.jsp 图8.对成绩进行排序 4.2.4主要源代码 1 与数据库的连接

package com.dujie.util;

import java.io.FileInputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Properties; public class ConnectionUtil { private static String driver; private static String url; private static String user; private static String password; static { try { Properties pro = new Properties(); InputStream fis = Connection.class.getClassLoader() .getResourceAsStream("jdbc.properties"); pro.load(fis); //连接Oracle pro.load(new FileInputStream("jdbc_oracle.properties")); //连接MySql // pro.load(new FileInputStream("jdbc_mysql.properties")); // pro.load(new FileInputStream("../QueryScore/jdbc_mysql.properties")); // driver = pro.getProperty("jdbc.driver"); // url = pro.getProperty("jdbc.url"); // user = pro.getProperty("jdbc.user"); // password = pro.getProperty("jdbc.password"); driver = "com.mysql.jdbc.Driver"; url = "jdbc:mysql://127.0.0.1:3306/queryscore"; user = "sa"; password = "sa"; Class.forName(driver); } catch (Exception e) { e.printStackTrace(); } } public static Connection getConnection() throws SQLException { return DriverManager.getConnection(url, user, password); }

public static void main(String[] args) throws SQLException {