5.29号今日总结
今天下午进行了期末测试,如下是题目和代码:
河北宏志大学学生成绩管理系统
1、项目需求:
学生管理是各大院校的管理工作中尤为重视的一项工作,它一直以来是学校管理的一项重要的衡量指标。学生管理系统的应用解决了学校日常学生管理工作中的信息量大、数据难以统计、数据更新困难等问题。河北宏志大学为了提高工作效率,及时掌握学生的学习成绩、个人基本情况等一系列数据信息,要求开发学生成绩管理系统。
2.系统要求与功能设计
2.1 页面要求
(1)通过浏览器查看,能适应常用分辨率;(1分)
(2)布局合理、结构清晰、页面完整;(1分)
(3)网站页面整体风格统一;(1分)
(4)首页为用户登录页面,不同角色用户登录后,进入相应的功能页,要求密码在数据库中加密;(4分)
(5)学生功能页:学生查看、修改基本信息,查询个人所有的考试科目的成绩;
(6)教师功能页:教师查看、修改基本信息,录入、修改个人所教授考试科目考试成绩,可以实现汇总查询;
(7)管理员功能页:用户注册、用户权限管理;
(8)对每页中的查询结果推荐采用分页显示。
图1 学生成绩管理系统功能结构图
2.2 功能要求
(1)设置年级参数:增加、删除、修改年级参数;(1分)
(2)设置班级参数:增加、删除、修改班级参数;(1分)
(3)设置考试科目参数:增加、删除、修改考试科目参数;(1分)
(4)学生基本信息维护:增加、删除、修改学生基本信息;(1分)
(5)教师基本信息维护:增加、删除、修改教师基本信息;(1分)
(6)考试成绩维护:教师用户登录后选择考试科目,选择所教班级依次录入考试成绩;(3分)
(7)基本成绩查询:学生用户登录后,可查询所有所学科目的成绩,仅限于查询本人成绩;(2分)
(8)成绩信息查询:教师用户可依据各种条件查询所教班级的学生成绩信息;(至少要求提供两种条件查询)(2分)
(9)汇总查询:管理员可以依据条件汇总统计各个科目不及格(分数低于60分)和成绩优秀(分数高于89分)的学生人数;(3分)
(12)用户管理:管理员可以查询用户、批准新用户、暂停用户、为用户赋予角色,普通用户可以修改用户资料。(2分)
2.1,2.2 评分标准:以上各项分值为页面要求和功能要求,各项分值合计(24分);除此以外设计出合理的数据库和数据表(3分),数据库连接正常(2分),设计出用户权限管理(6分)。
2.3 网站发布
(1)网站制作完成后需指定一台机器作为服务器发布。
(2)在其他主机上可正常浏览。
评分标准:能够在Tomcat服务器中正确部署(3分),其它主机可正常浏览(2分);
2.4 注意事项
(1)网站首页(登录页) 统一使用index.*命名。(*表示源文件的后缀名)。
Gbean.java
package bean; public class Gbean { private String Gnum; private String Gname; private String Gbanji; private String Gcourse; private int grade; public String getGnum() { return Gnum; } public void setGnum(String gnum) { Gnum = gnum; } public String getGbanji() { return Gbanji; } public void setGbanji(String gbanji) { Gbanji = gbanji; } public String getGcourse() { return Gcourse; } public void setGcourse(String gcourse) { Gcourse = gcourse; } public void setGrade(int grade) { this.grade = grade; } public String getGname() { return Gname; } public void setGname(String gname) { Gname = gname; } public int getGrade() { return grade; } public Gbean(String gnum, String gname, String gbanji, String gcourse, int grade) { Gnum = gnum; Gname = gname; Gbanji = gbanji; Gcourse = gcourse; this.grade = grade; } }
Sbean.java
package bean; public class Sbean { private String num; private String name; private String banji; private String sex; private String nianji; public String getNum() { return num; } public void setNum(String num) { this.num = num; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getBanji() { return banji; } public void setBanji(String banji) { this.banji = banji; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getNianji() { return nianji; } public void setNianji(String nianji) { this.nianji = nianji; } public Sbean(String num, String name, String banji, String sex, String nianji) { this.num = num; this.name = name; this.banji = banji; this.sex = sex; this.nianji = nianji; } }
Tbean.java
package bean; public class Tbean { private String Tnum; private String Tname; private String Tsex; private String course; public String getTnum() { return Tnum; } public void setTnum(String tnum) { Tnum = tnum; } public String getTname() { return Tname; } public void setTname(String tname) { Tname = tname; } public String getTsex() { return Tsex; } public void setTsex(String tsex) { Tsex = tsex; } public String getCourse() { return course; } public void setCourse(String course) { this.course = course; } public Tbean(String tnum, String tname, String Tsex, String course) { Tnum = tnum; Tname = tname; this.Tsex = Tsex; this.course = course; } }
DBUtil.java
package Util; import java.sql.*; public class DBUtil { public static Connection getConnection() throws ClassNotFoundException, SQLException { Connection connection = null;//连接数据库 Statement stmt = null;//Statement 对象用于将 SQL 语句发送到数据库中。 ResultSet rs = null; //1. 导入驱动jar包 //2.注册驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 好像要设置时区?? connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/qimo?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT", "root", "123456"); return connection; } public static void close(Connection connection) { try { if (connection != null) { connection.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void close(PreparedStatement preparedStatement) { try { if (preparedStatement != null) { preparedStatement.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void close(ResultSet resultSet) { try { if (resultSet != null) { resultSet.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void close(Statement state, Connection connection) { try { if (connection != null) { connection.close(); } if (state != null) { state.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void close(ResultSet rs, Statement state, Connection conn) { try { if (conn != null) { conn.close(); } if (state != null) { state.close(); } if(rs != null) { rs.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
index.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>用户登录页面</title>
</head>
<body>
<p align="center"><font size="30" color="red">用户登录</font></p>
<center>
<hr>
<form name="form" action="denglu1.jsp">
<b>学生登录</b>
<input type="submit" value="进入">
</form>
<br>
<form name="form1" action="denglu2.jsp">
<b>教师登录</b>
<input type="submit" value="进入">
</form>
<br>
<form name="form2" action="denglu3.jsp">
<b>管理员登录</b>
<input type="submit" value="进入">
</form>
<br>
</center>
</body>
</html>
由于考试时间来不及了,界面来不及套模板美化了.这个界面挺简陋的.