【课程设计】Java Web 学生成绩管理系统
摘要:一个基于Java Web的学生成绩管理系统,在学生成绩管理系统中主要有三个权限:管理员、教师和学生。管理员模块主要实现的基本功能是添加教师、添加学生、开设院系和开设课程;教师模块主要实现的基本功能是录入学生成绩、更新学生成绩、查看班级学生成绩和查看教师个人信息(备注:每一位教师只可以管理自己所教班级的学生成绩);学生模块主要实现的基本功能是查看个人所有成绩和个人基本信息。
备注:学生成绩管理系统的部分代码和部分功能展示如下,完整的代码可点击博主主页进行查看,在压缩包下除了完整的系统源代码之外,还有系统所涉及的数据表、数据库Sql语句、设计论文。该系统源代码导入myeclipse后配置好开发环境便可使用,操作简单方便,主要适用于初学者的学习与使用。
一、开发环境
- Sql Server 2012
- Myeclipse 2017
- 建模工具 powerdesigner16.5
- JDK 1.8
二、数据库连接
数据库的连接采用jdbc的方式,通过URL指定了连接的数据库名称为:student,用户名为USER:sa,登录密码为POSSWORD:123456。连接数据库的具体代码如下:
Dbutil.java
package link;
import java.sql.*;
public class Dbutil {private static final String URL="jdbc:sqlserver://localhost;DatabaseName=student";private static final String USER="sa";private static final String PASSWORD="123456";protected static Statement s =null;protected static ResultSet rs =null;protected static Connection conn =null;public static synchronized Connection getConnection(){try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");conn =DriverManager.getConnection(URL,USER,PASSWORD);}catch(Exception e){e.printStackTrace();}return conn;}public static int executeUpdate(String sql){int result=0;try {s = getConnection().createStatement();result=s.executeUpdate(sql);}catch(SQLException e) {e.printStackTrace();}return result;}public static ResultSet executeQuery(String sql){try{s = getConnection().createStatement();rs=s.executeQuery(sql);}catch(SQLException e) {e.printStackTrace();}return rs;}public static PreparedStatement executePreparedStatement(String sql){PreparedStatement ps=null;try {ps=getConnection().prepareStatement(sql);}catch(SQLException e) {e.printStackTrace();}return ps;}public static void rollback(){try {getConnection().rollback();}catch(SQLException e) {e.printStackTrace();}}public static void close(){try{if(rs!=null)rs.close();if(s!=null)s.close();if(conn!=null)conn.close();}catch(SQLException e) {e.printStackTrace();}}public static void main(String[] args){Connection conn = null;try {conn = DriverManager.getConnection(URL,USER,PASSWORD);} catch (SQLException e) {e.printStackTrace();}if(conn == null){System.out.println("e");}else{System.out.println("okk");}}
}
三、系统全局E-R图
系统全局E-R图展示了学生成绩管理系统中所有实体之间的关系以及每一个实体所具备的属性。在开发系统的过程当中占据了重要的指导作用。系统全局E-R图如下所示:
四、管理员模块
- 管理员管理主页面
管理员是学生成绩管理系统的最高权限,可以增加教师、增加学生、开设学院、开设课程。jsp页面的代码实现如下:
ad_Manage.jsp
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<HTML>
<body background="background/8.jpg">
<center><font size=2 color = blue><h2>管理员界面</h2><form action="student_manage.jsp" method="post" ><input type=submit value="学生信息管理"></form><form action="addteacherServlet" method="post" ><input type=submit value="添加教师信息"></form><form action="addcourseServlet" method="post" ><input type=submit value="开设课程信息"></form><form action="adddeptServlet" method="post" ><input type=submit value="开设院系信息"></form><h3><a href="login.jsp">退出登录</a></h3>
</font>
</center>
</body>
</HTML>
管理员管理主页面如下:
- 添加教师信息页面
管理员可以实现添加教师的功能,在添加教师的过程中,可以指定该教师是哪个学院的教师。jsp页面的代码实现如下:
ad_teacher.jsp
<%@ page contentType="text/html;charset=UTF-8" %><center>
<HTML><body background="background/9.jpg"><font size=3 color = blue><h2>添加教师信息</h2>
<form action="addteacherServlet" method="post" >
教师编号:<input type="text" name="ZGH" id="ZGH"/><br>
院系编号:<input type="text" name="YZSH" id="YZSH"/><br>
教师姓名:<input type="text" name="JSXM" id="JSXM"/><br>
教师性别:<input type="text" name="JSXB" id="JSXB"/><br>
教师年龄:<input type="text" name="JSNL" id="JSNL"/><br>
联系方式:<input type="text" name="LXFS" id="LXFS"/><br><input type=submit value="添加"><input type=reset value="重置">
</form><a href="ad_Manage.jsp">返回上一层</a>
</font></body></HTML></center>
添加教师页面如下:
- 添加学生页面
管理员可以添加学生,在添加学生过程中,可以指定该学生所属的学院和所属的班级。jsp页面的代码实现如下:
ad_student.jsp
<%@ page contentType="text/html;charset=UTF-8" %><center>
<HTML><body background="background/9.jpg"><font size=3 color = blue><h2>添加学生信息</h2>
<form action="addstudentServlet" method="post" >
学生学号:<input type="text" name="XH" id="XH"/><br>
院系编号:<input type="text" name="YZSH" id="YZSH"/><br>
学生姓名:<input type="text" name="XSXM" id="XSXM"/><br>
学生性别:<input type="text" name="XSXB" id="XSXB"/><br>
学生年龄:<input type="text" name="XSNL" id="XSBL"/><br>
学生籍贯:<input type="text" name="XSJG" id="XSJG"/><br>
所属专业:<input type="text" name="SSZY" id="SSZY"/><br>
所属班级:<input type="text" name="SSBJ" id="SSBJ"/><br><input type=submit value="添加"><input type=reset value="重置">
</form><a href="ad_Manage.jsp">返回上一层</a>
</font></body></HTML></center>
添加学生页面如下:
- 开设院系页面
管理员根据需要开设院系,只有院系成功开设,才能够招收该院系的教师和学生。jsp页面的代码实现如下:
ad_dept.jsp
<%@ page contentType="text/html;charset=UTF-8" %><center>
<HTML><body background="background/9.jpg"><font size=3 color = blue><h2>开设院系信息</h2>
<form action="adddeptServlet" method="post" >
院系编号:<input type="text" name="YZSH" id="YZSH"/><br>
院系名称:<input type="text" name="YXMC" id="YXMC"/><br>
院系电话:<input type="text" name="YXDH" id="YXDH"/><br>
院系地址:<input type="text" name="YXDZ" id="YXDZ"/><br><input type=submit value="添加"><input type=reset value="重置">
</form><a href="ad_Manage.jsp">返回上一层</a>
</font></body></HTML></center>
添加院系页面如下:
- 开设课程页面
管理员可以根据要求开设必要的课程,可以指定所教该课程的老师,可以指定该课程是考试课还是考察课,以及该课程的学分。jsp页面的代码实现如下:
ad_course.jsp
<%@ page contentType="text/html;charset=UTF-8" %><center>
<HTML><body background="background/9.jpg"><font size=3 color = blue><h2>开设课程信息</h2>
<form action="addcourseServlet" method="post" >
课程编号:<input type="text" name="KCBH" id="KCBH"/><br>
教师编号:<input type="text" name="ZGH" id="ZGH"/><br>
课程名称:<input type="text" name="KCMC" id="KCMC"/><br>
课程学分:<input type="text" name="KCXF" id="KCXF"/><br>
课程性质:<input type="text" name="KCXZ" id="KCXZ"/><br><input type=submit value="添加"><input type=reset value="重置">
</form><a href="ad_Manage.jsp">返回上一层</a>
</font></body></HTML></center>
开设课程的页面如下:
五、教师模块.
- 教师管理页面
教师主要实现的操作是对学生的成绩进行管理,查询所教班级的学生成绩,录入学生成绩和更新学生成绩。jsp页面的代码实现如下:
teacher.jsp
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<HTML>
<body background="background/2.jpg">
<center><font size=2><h2>教师管理界面</h2><form action="inputscoreServlet" method="post" ><input type=submit value="录入学生成绩"></form><form action="updatescoreServlet" method="post" ><input type=submit value="更新学生成绩"></form><form action="lookclassroom_message.jsp" method="post" ><input type=submit value="查询班级成绩"></form><form action="frindteacherServlet" method="post" ><input type=submit value="查询个人信息"></form><h3><a href="login.jsp">退出登录</a></h3>
</font>
</center>
</body>
</HTML>
教师管理的页面如下:
- 录入学生成绩页面
教师根据所教的课程编号,可以录入所修该课程的学生的成绩。jsp页面的代码显示如下:
input_score.jsp
<%@ page contentType="text/html;charset=UTF-8" %><center>
<HTML><body background="background/9.jpg"><font size=3 color = blue><h3>录入学生成绩</h3>
<form action="inputscoreServlet" method="post" >
学生学号:<input type="text" name="XH" id="XH"/><br>
课程编号:<input type="text" name="KCBH" id="KCBH"/><br>
课程成绩:<input type="text" name="KCCJ" id="KCCJ"/><br><input type=submit value="添加"><input type=reset value="重置">
</form><a href="teacher.jsp">返回上一层</a>
</font></body></HTML></center>
录入学生成绩的页面如下:
- 查看班级学生成绩页面
教师只能查询所教班级的学生成绩,输入所教的班级编号,便可以查看班级所有学生的成绩。jsp页面的代码显示如下:
lookclassroom.jsp
<%@ page contentType="text/html;charset=gb2312" %><center>
<HTML><body background="background/9.jpg"><font size=2 color = blue><h3>查看班级成绩</h3><form action="lookclassServlet" method="post" >班级编号:<input type="text" name="SSBJ" id="SSBJ"/><input type=submit value="查看"><input type=reset value="重置">
</form>
<br>
<table border="1"><tr><th>学号</th><th>姓名</th><th>课程编号</th><th>课程名称</th><th>学分</th><th>课程性质</th><th>成绩</th></tr><%StringBuffer search=(StringBuffer)session.getAttribute("search");if(search!=null){out.print(search);}%></table><a href="lookclassroom_message.jsp">返回上一层
</font></body></HTML></center>
查询班级学生成绩的页面如下:
六、学生模块
- 查看个人成绩页面
学生登录学生成绩管理系统之后,便可以查看到自己的个人所有成绩。jsp页面的代码显示如下:
findstudent_score.jsp
<%@ page contentType="text/html;charset=gb2312" %><center>
<HTML><body background="background/5.jpg"><font size=2 color = blue><h3>学生查看个人成绩</h3>
<br><br>
<table border="1"><tr><th>课程编号</th><th>课程名称</th><th>学分</th><th>课程性质</th><th>成绩</th><th>取得学分</th><th>绩点</th><th>学分绩点</th></tr><%StringBuffer search=(StringBuffer)session.getAttribute("search");if(search!=null){out.print(search);}%></table><a href="student.jsp">返回上一层
</font></body></HTML></center>
学生查看个人成绩的页面如下:
- 查看个人信息页面
学生点击查看个人信息之后,便可以看到个人的基本信息,以及所属的学院和班级。jsp页面的代码显示如下:
findstudent_personal.jsp
<%@ page contentType="text/html;charset=gb2312" %><center>
<HTML><body background="background/9.jpg"><font size=2 color = blue ><h3>学生查看个人信息</h3>
</a><br/>
<table border="1"><tr><th>学号</th><th>院系编号</th><th>姓名</th><th>性别</th><th>年龄</th><th>籍贯</th><th>专业</th><th>班级</th></tr><%StringBuffer search=(StringBuffer)session.getAttribute("search");if(search!=null){out.print(search);}%></table><a href="student.jsp">返回上一层
</font></body></HTML></center>
学生查看个人信息的页面如下:
【课程设计】Java Web 学生成绩管理系统相关推荐
- Java Web学生成绩管理系统(JSP+Servlet+JDBC+Dao)
学完java web后,期末期间用所学知识写了一个简单的学生管理系统,现在有空整理分享下. 注意:本文章仅供参考和学习,源码和数据库设计在文章的底部,点击展开然后往下翻就可以找到,其实数据库就六张表, ...
- ♥数据库课程设计之《学生成绩管理系统》♥
0.写在前面 展示的是很常规的<学生成绩管理系统>,但是可修改为任何管理系统,只需要改些字段即可,具备java基础即可 简单的增删改查均可实现,本来很简单的几页文档就能交了,老师非得让详细 ...
- (MFC)广州大学大一下课程设计实验报告-学生成绩管理系统
程序设计 课程设计实验报告 学院: 计算机科学与网络工程学院 专业班级: XXX 姓名: XXX 学号: 190XXXXXXX 指导老师:张艳玲 2020.6.29 目录 一.课程设计题目及内容 二. ...
- 大学生课程设计 ------ Java Web课程设计(学生成绩管理系统03)
大学生课程设计 ------ Java Web课程设计(学生成绩管理系统03) Java Web课程设计(代码+课程报告) ---------------------我是分割线------------ ...
- 大学生课程设计 ------ Java Web课程设计(学生成绩管理系统01)
大学生课程设计 ------ Java Web课程设计(学生成绩管理系统01) Java Web课程设计(代码+课程报告) 课程作业效果如下: 学生1:后台实现.数据库设计.前端后台整合 学生2:前端 ...
- 大学生课程设计 ------ Java Web课程设计(图书馆管理系统02)
大学生课程设计 ------ Java Web课程设计(图书馆管理系统02) Java Web课程设计(代码+课程报告) 项目分工情况(每个人完成那些功能或任务) 同学A:数据库设计,后台实现,前端与 ...
- java成绩管理系统论文总结_毕业论文基于java的学生成绩管理系统.doc
毕业论文基于java的学生成绩管理系统 PAGE PAGE 109 课 程 设 计 论 文 基于JAVA的学生成绩管理系统的设计与实现 THE DESIGN AND REALIZATION OF TH ...
- jsp+ssh+mysql实现的Java web学生考勤管理系统源码附带视频指导运行教程
今天给大家演示的是一款由jsp+ssh+mysql实现的Java web学生考勤管理系统,其中struts版本是struts2.本系统实现了管理员.学生.教师三个角色的功能,其中管理员可以管理基本信息 ...
- java成绩管理系统毕业论文_java web学生成绩管理系统,可作为java毕业论文
项目描述 这是有利于大学生毕业论文参考的java项目<学生成绩管理系统> 项目名称:学生成绩管理系统 项目需求分析(Need 需求): (1)该系统的用户分为教师和学生.教师的功能有:管 ...
最新文章
- 算法------验证回文串
- P1516 青蛙的约会
- 从零开始发布前端代码到服务器上_无服务器计算:让每行代码都能住上“经济适用房”...
- java容器类1:Collection,List,ArrayList,LinkedList深入解读
- 中国流动相配件行业市场供需与战略研究报告
- M文件---脚本与函数
- k3刷机 重置_斐讯K3刷LEDE固件成功刷机教程
- Kindle wifi 连接不上的问题
- 机器学习_高偏差(High bias)与高方差(High vars)
- python 排列组合 数据量过大_Python 排列组合的实现
- Xara3Dnbsp;6.0动画文字软件教程(一)
- 植物大战僵尸修改金币以及关卡
- 华为畅享20 pro升级鸿蒙,最全升级机型汇总,附带华为鸿蒙HarmonyOS升级步骤
- 云之讯张雯:云计算时代融合通讯开发及算法优化
- 接入Google Sdk 遇到的坑
- google play 此应用使用的结算功能版本已不能受支持。
- RF射频卡的介绍与与手机NFC的通信
- 多测师肖sir_高级金牌讲师_第2个月第18讲jenkins(001)
- 【ceph】AsyncMessenger 网络模块总结--编辑中
- NVMe 2.0a - Sanitize
热门文章
- Mysql- --DQl语句(select数据查询语言,多表查询,View试图)linux常用(重点)
- Elasticsearch常见报错和处理方法
- 百位数,十位数,个位数的求法
- xiunobbs 4 mysql_xiunobbs
- 3、身份证、数字、日期、手机号码等等的验证判断
- antd table自适应(横向滚动条)
- 张氏矢量化骨骼化细化算法
- LCD和OLED显示屏有什么区别?
- 计算机组成原理实验报告 算术逻辑单元ALU实验(源代码全)
- Go实战--也许最快的Go语言Web框架kataras/iris初识四(i18n、filelogger、recaptcha)