前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >BS1077-基于java+JSP+mysql开发实现高校学生学籍管理系统

BS1077-基于java+JSP+mysql开发实现高校学生学籍管理系统

作者头像
计算机程序优异哥
发布2023-09-18 10:35:36
3180
发布2023-09-18 10:35:36
举报
文章被收录于专栏:毕设程序汇总

本高校学生学籍管理系统设计与实现,系统主要采用java,springMVC,mybatis,mysql数据库,JSP页面开发技术,针对高校内部的学生,教师,班级,课程,学生学籍,学生成绩等数据采用关系数据库mysql进行存储分析,系统主要通过前后端开发技术整合,搭建综合性的大学生学籍管理系统。

高校学生学籍管理系统设计与实现主要包含:用户登录,学生管理,教师管理,班级管理,班级管理,专业管理,院系管理,课程管理,课程类型管理,成绩管理等

原文地址

一、程序设计

本高校学生学籍管理系统设计与实现,主要内容涉及:

主要功能模块:用户登录,学生管理,教师管理,班级管理,班级管理,专业管理,院系管理,课程管理,课程类型管理,成绩管理等

二、效果实现

学生管理

三、代码实现

高校学生学籍管理系统设计与实现的设计与开发,主要采用前后端模式,针对高校内部的学生,教师,课程,班级,年级,院系,专业,课程信息,学生学籍等等数据封装成JSON格式,完成数据下发至系统界面端渲染,系统界面端针对JSON解析后采用javascript完成页面展示。其中系统主要采用java+javascript开发实现,系统基础数据库采用mysql关系数据库,核心代码逻辑如下:

代码语言:java
复制
function submit() {
                //获取表单数据前取消禁用
                $("#banjiSelect").attr('disabled',false);
                //获取表单数据前取消禁用
                $("#zhuanyeSelect").attr('disabled',false);
                //获取表单数据前取消禁用
                $("#yuanxiSelect").attr('disabled',false);

			var crossFlag = getQueryString("cross");
			if(validform() ==true && compare() == true){
				if(crossFlag) {
				}
				let data = {};
				getContent();
				let value = $('#addOrUpdateForm').serializeArray();
				$.each(value, function (index, item) { 
							data[item.name] = item.value;
						});
				let json = JSON.stringify(data);
				var urlParam;
				var successMes = '';
				if(updateId!=null && updateId!="null" && updateId!=''){
					urlParam = 'update';
					successMes = '修改成功';
				}else{		
					urlParam = 'save';
					successMes = '添加成功';
				}
				//更新跨表属性
			       var crossuserid;
			       var crossrefid;
			       var crossoptnum;
				if(crossFlag) {
					var statusColumnName = window.sessionStorage.getItem('statusColumnName'); 
					var statusColumnValue = window.sessionStorage.getItem('statusColumnValue'); 
					var obj = JSON.parse(window.sessionStorage.getItem('crossObj'));
					if(statusColumnName!='') {
						if(!statusColumnName.startsWith("[")) {
							for (var o in obj){
								if(o==statusColumnName){
									obj[o] = statusColumnValue;
								}
							}
							var table = window.sessionStorage.getItem('crossTableName');
							httpJson(crossTableName + "/update","POST",obj,(res)=>{
								if(res.code == 0){
									console.log('更新属性成功');
								}
							});   
						} else  {
							crossuserid = Number(window.sessionStorage.getItem('userid'));
							crossrefid = obj["id"];
							crossoptnum = window.sessionStorage.getItem('statusColumnName');
							crossoptnum=crossoptnum.replace(/\[/,"").replace(/\]/,"");
						}
					}
				}
				if(crossrefid && crossuserid) {
					data.crossuserid=crossuserid;
					data.crossrefid=crossrefid;
					http("xuesheng/page","GET",{
						page:1,
						limit:10,
						crossuserid:data.crossuserid,
						crossrefid:data.crossrefid,			
					},(res)=>{
						if(res.data.total >= crossoptnum){
							alert(window.sessionStorage.getItem('tips'));
							return false;
						} else {
							httpJson("xuesheng/"+urlParam,"POST",data,(res)=>{
								if(res.code == 0){
									window.sessionStorage.removeItem('id');
									let flag = true;
									if(crossFlag) {
									}

									if(flag){
										alert(successMes);
									}
									if(window.sessionStorage.getItem('onlyme') != null && window.sessionStorage.getItem('onlyme') == "true"){
										window.sessionStorage.removeItem('onlyme');
										window.location.href="${pageContext.request.contextPath}/index.jsp";
									}else{
										window.location.href="list.jsp";
									}
									
								}
							});
						}
					});
				} else {
					httpJson("xuesheng/"+urlParam,"POST",data,(res)=>{
						if(res.code == 0){
							window.sessionStorage.removeItem('id');
							let flag = true;
							if(crossFlag) {
							}

							if(flag){
								alert(successMes);
							}
							if(window.sessionStorage.getItem('onlyme') != null && window.sessionStorage.getItem('onlyme') == "true"){
								window.sessionStorage.removeItem('onlyme');
								window.location.href="${pageContext.request.contextPath}/index.jsp";
							}else{
								window.location.href="list.jsp";
							}
							
						}
					});
				}
			}else{
				alert("表单未填完整或有错误");
			}
		}

实现学生学籍管理,需要考虑以下几个方面:

数据存储:需要使用数据库来存储学生信息,包括学生姓名、学号、性别、年龄、班级等。

用户界面:需要设计一个用户界面,用于输入和查看学生信息。

业务逻辑:需要编写代码来处理学生信息的增删改查等操作。

下面是一个简单的 Java 代码示例,用于实现学生学籍管理:

代码语言:java
复制
import java.sql.*;
import java.util.*;

public class StudentManagement {
    private Connection conn;
    private PreparedStatement pstmt;
    private ResultSet rs;

    public StudentManagement() throws SQLException {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            String url = "jdbc:mysql://localhost:3306/school";
            String user = "root";
            String password = "password";
            conn = DriverManager.getConnection(url, user, password);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    public void addStudent(String name, String id, String gender, int age, String classname) throws SQLException {
        String sql = "INSERT INTO student (name, id, gender, age, classname) VALUES (?, ?, ?, ?, ?)";
        pstmt = conn.prepareStatement(sql);
        pstmt.setString(1, name);
        pstmt.setString(2, id);
        pstmt.setString(3, gender);
        pstmt.setInt(4, age);
        pstmt.setString(5, classname);
        pstmt.executeUpdate();
    }

    public void deleteStudent(String id) throws SQLException {
        String sql = "DELETE FROM student WHERE id = ?";
        pstmt = conn.prepareStatement(sql);
        pstmt.setString(1, id);
        pstmt.executeUpdate();
    }

    public void updateStudent(String id, String name, String gender, int age, String classname) throws SQLException {
        String sql = "UPDATE student SET name = ?, gender = ?, age = ?, classname = ? WHERE id = ?";
        pstmt = conn.prepareStatement(sql);
        pstmt.setString(1, name);
        pstmt.setString(2, gender);
        pstmt.setInt(3, age);
        pstmt.setString(4, classname);
        pstmt.setString(5, id);
        pstmt.executeUpdate();
    }

    public List<Map<String, Object>> getStudents() throws SQLException {
        String sql = "SELECT * FROM student";
        pstmt = conn.prepareStatement(sql);
        rs = pstmt.executeQuery();
        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
        while (rs.next()) {
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("id", rs.getString("id"));
            map.put("name", rs.getString("name"));
            map.put("gender", rs.getString("gender"));
            map.put("age", rs.getInt("age"));
            map.put("classname", rs.getString("classname"));
            list.add(map);
        }
        return list;
    }
}

代码中,首先在构造函数中连接数据库,然后定义了增删改查的方法。其中,addStudent方法用于添加学生信息,deleteStudent方法用于删除学生信息,updateStudent方法用于更新学生信息,getStudents方法用于获取所有学生信息。这些方法都需要抛出SQLException异常。最后,可以根据需求设计用户界面,调用以上方法实现学生学籍管理。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、程序设计
  • 二、效果实现
    • 学生管理
    • 三、代码实现
    相关产品与服务
    数据库
    云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档