1、 项目概述
1.1 项目主要内容
1.简述本项目实现的主要内容和目标
(1)实现一个简单的学生信息管理的程序StudentInfo。
(2)教学管理人员能够使用StudentInfo程序对学生基本信息、课程信息进行管理,包括数据的添加、修改、删除和浏览;
(3)能够对学生选课进行管理,包括添加学生选课信息、录入成绩;
(4)能够使用查询功能,快速查看到指定学生或指定课程的基本信息以及所指定学生的选课信息;
(5)要注意添加学生基本信息、课程信息相关数据时,学号和课程号不能重复;还有在添加学生选课信息时,要求该学生和课程必须是存在的,而且不能添加重复的选课信息。
(6)提供友好的交互界面,可以方便用户进行功能选择,实现信息的管理和查询,并可清晰地显示相关信息。
2.使用的开发平台:IDEA.Java Swing
1.2 项目需求分析
管理员能够使用该程序对学生基本信息、课程信息、成绩信息进行管理,包括数据的增加、修改、删除和查询。
增加功能:增加学生基本信息、课程信息、成绩信息。增加时学生学号和课程号不可重复,且在选课信息部分增加的学生和课程必须存在;
修改功能:修改学生和课程基本信息以及选课信息。注意点和增加部分一样;
删除功能:可以删除不需要的信息。若被删除的信息在其他表中被使用,则应先停止此信息的使用,再允许删除。
查询功能:快速查看到指定学生的基本和选课信息或指定课程的基本信息;考虑到便捷性,最好实现输入不完全的信息即可查询的功能。
提供友好的交互界面,可以方便用户进行功能选择,实现信息的管理和查询,并可清晰地显示相关信息。
2、 项目设计
2.1 项目目标
根据上面的需求分析,学生成绩管理系统要达到的目标:
(1)教学管理人员能够使用StudentInfo程序对学生基本信息、课程信息进行管理,包括数据的添加、修改、删除和浏览;
(2)能够对学生选课进行管理,包括添加学生选课信息、录入成绩;
(3)能够使用查询功能,快速查看到指定学生或指定课程的基本信息以及所指定学生的选课信息;
(4)要注意添加学生基本信息、课程信息相关数据时,学号和课程号不能重复;还有在添加学生选课信息时,要求该学生和课程必须是存在的,而且不能添加重复的选课信息。
(5)提供友好的交互界面,可以方便用户进行功能选择,实现信息的管理和查询,并可清晰地显示相关信息。
2.2 构建开发环境
【1】系统开发平台:Eclipse,Java,Mysql
【2】系统开发语言:Java、数据库语言
【3】运行平台:IDEA.JAVA.Swing
2.3 系统功能结构
学生信息管理系统在数据库建立三个表,分别为:教师表、学生表、课程表,对于每个表格,都可以对上面的信息进行增删改查等操作。
3、功能分析
学生管理系统所需要达成如下功能:
4、详细设计
4.1 Package dao
【1】 模块概述
CourseDao操作实体类、ScoreDao操作实体类、StudentDao操作实体类、UserDao操作实体类。
【2】 代码实现
CourseDao操作实体类:
package com.score.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import com.score.model.Course;
import com.score.utils.DBUtils;
/**
-
CourseDao操作实体类
*/
public class CourseDao {/**
- 添加Course
*/
public void insert(Course course){
Connection conn = null;
PreparedStatement psmt = null;
try {
conn = DBUtils.getConnection();
String sql = “insert into course(cname,tname) values(?,?)”;
psmt = conn.prepareStatement(sql);
psmt.setString(1, course.getCname());
psmt.setString(2, course.getTname());
psmt.executeUpdate();
DBUtils.close(conn, psmt);
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
*修改Course
*/
public void update(Course course){
Connection conn = null;
PreparedStatement psmt = null;
try {
conn = DBUtils.getConnection();
String sql = “update course set cname=?,tname=? where id = ?”;
psmt = conn.prepareStatement(sql);
psmt.setString(1, course.getCname());
psmt.setString(2, course.getTname());
psmt.setInt(3, course.getId());
psmt.executeUpdate();
DBUtils.close(conn, psmt);
} catch (SQLException e) {
e.printStackTrace();
}
}/**
- 删除Course
*/
public void delete(int id){
Connection conn = null;
PreparedStatement psmt = null;
try {
conn = DBUtils.getConnection();
String sql = “delete from course where id = ?”;
psmt = conn.prepareStatement(sql);
psmt.setInt(1, id);
psmt.executeUpdate();
DBUtils.close(conn, psmt);
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
- 查询Course
*/
public List find(Course course){
Connection conn &#
- 添加Course