首页 > 其他分享 >基于SSM的学生信息管理系统

基于SSM的学生信息管理系统

时间:2024-08-29 16:25:45浏览次数:10  
标签:基于 scanner System 学生 SSM String 信息管理系统 id out

一、项目介绍

基于SSM框架的学生管理系统,只有管理员一个角色,主要功能如下

用户的登录注册,学生信息管理,教师信息管理,班级信息管理,采用mvc项目架构,覆盖增删改查,包括学生教师班级的信息导出上传导入等等功能


二、项目技术

编程语言:Java

项目架构:B/S架构

前端技术:JSP、JavaScript、Jquery

后端技术:Spring、SpringMVC、MyBatis


三、运行环境

JDK版本:1.8及以上都可以

操作系统:Windows7/10、MacOS

开发工具:IDEA、Ecplise都可以

数据库: MySQL5.5/5.7/8.0版本都可以

Tomcat:7.0及以上版本都可以

Maven: 无版本要求

四、运行截图

基于SSM的学生信息管理系统_SSM

基于SSM的学生信息管理系统_学生信息管理系统_02

基于SSM的学生信息管理系统_SSM_03

基于SSM的学生信息管理系统_Java_04

基于SSM的学生信息管理系统_SSM_05

基于SSM的学生信息管理系统_SSM_06

五、主要功能代码实现

  1. 学生信息录入
  • 功能描述:可以添加新学生的基本信息,如姓名、学号、年龄和专业等。
  1. 学生信息查询
  • 功能描述:允许用户根据学号或姓名查询特定学生的信息。
  1. 学生信息修改
  • 功能描述:能够更新已存在学生的相关信息,确保信息的准确性。
  1. 学生信息删除
  • 功能描述:提供删除学生信息的功能,能够根据学号删除对应的学生记录。
import java.util.ArrayList;
import java.util.Scanner;

class Student {
    String name;
    String id;
    int age;
    String major;

    public Student(String name, String id, int age, String major) {
        this.name = name;
        this.id = id;
        this.age = age;
        this.major = major;
    }

    @Override
    public String toString() {
        return "姓名: " + name + ", 学号: " + id + ", 年龄: " + age + ", 专业: " + major;
    }
}

public class StudentManagementSystem {
    private ArrayList<Student> students;
    private Scanner scanner;

    public StudentManagementSystem() {
        students = new ArrayList<>();
        scanner = new Scanner(System.in);
    }

    public void addStudent() {
        System.out.print("请输入姓名: ");
        String name = scanner.nextLine();
        System.out.print("请输入学号: ");
        String id = scanner.nextLine();
        System.out.print("请输入年龄: ");
        int age = scanner.nextInt();
        scanner.nextLine(); // 清除换行符
        System.out.print("请输入专业: ");
        String major = scanner.nextLine();

        students.add(new Student(name, id, age, major));
        System.out.println("学生信息已添加。");
    }

    public void viewStudent() {
        System.out.print("请输入学号或姓名: ");
        String input = scanner.nextLine();
        
        for (Student student : students) {
            if (student.id.equals(input) || student.name.equals(input)) {
                System.out.println(student);
                return;
            }
        }
        System.out.println("未找到相关学生信息。");
    }

    public void updateStudent() {
        System.out.print("请输入要修改的学生学号: ");
        String id = scanner.nextLine();

        for (Student student : students) {
            if (student.id.equals(id)) {
                System.out.print("请输入新的姓名: ");
                student.name = scanner.nextLine();
                System.out.print("请输入新的年龄: ");
                student.age = scanner.nextInt();
                scanner.nextLine(); // 清除换行符
                System.out.print("请输入新的专业: ");
                student.major = scanner.nextLine();

                System.out.println("学生信息已更新。");
                return;
            }
        }
        System.out.println("未找到相关学生信息。");
    }

    public void deleteStudent() {
        System.out.print("请输入要删除的学生学号: ");
        String id = scanner.nextLine();
        
        for (int i = 0; i < students.size(); i++) {
            if (students.get(i).id.equals(id)) {
                students.remove(i);
                System.out.println("学生信息已删除。");
                return;
            }
        }
        System.out.println("未找到相关学生信息。");
    }

    public static void main(String[] args) {
        StudentManagementSystem sms = new StudentManagementSystem();
        while (true) {
            System.out.println("\n1. 添加学生\n2. 查询学生\n3. 修改学生\n4. 删除学生\n5. 退出");
            System.out.print("请选择操作: ");
            Scanner scanner = new Scanner(System.in);
            int choice = scanner.nextInt();
            scanner.nextLine(); // 清除换行符
            
            switch (choice) {
                case 1:
                    sms.addStudent();
                    break;
                case 2:
                    sms.viewStudent();
                    break;
                case 3:
                    sms.updateStudent();
                    break;
                case 4:
                    sms.deleteStudent();
                    break;
                case 5:
                    System.exit(0);
                default:
                    System.out.println("无效选项,请重试。");
            }
        }
    }
}

六、源码获取

整理的一些关于大学生java项目学习资料(附讲解~~)和大家一起分享、获取源码,公粽号:计算机毕设智库,领取资料

标签:基于,scanner,System,学生,SSM,String,信息管理系统,id,out
From: https://blog.51cto.com/u_16985286/11868638

相关文章

  • 基于Java的民宿管理系统
    系统包含:源码+论文所用技术:SpringBoot+Vue+SSM+Mybatis+Mysql免费提供给大家参考或者学习,获取资料请私聊我目录第1章绪论 11.1选题动因 11.2目的和意义 11.3论文结构安排 2第2章开发环境与技术 32.1MYSQL数据库 32.2Tomcat介绍 32.3vue技术 42.4Sp......
  • 基于Java的银行账目账户管理系统的设计与实现
    系统包含:源码+论文所用技术:SpringBoot+Vue+SSM+Mybatis+Mysql免费提供给大家参考或者学习,获取资料请私聊我目录第1章绪论 11.1选题动因 11.2目的和意义 11.3论文结构安排 2第2章开发环境与技术 32.1MYSQL数据库 32.2Tomcat介绍 32.3vue技术 42.4Sp......
  • 基于Vue的MES生产制造执行系统
    系统包含:源码+论文所用技术:SpringBoot+Vue+SSM+Mybatis+Mysql免费提供给大家参考或者学习,获取资料请私聊我目录第1章绪论 11.1选题动因 11.2目的和意义 11.3论文结构安排 2第2章开发环境与技术 32.1Tomcat简介 32.2Eclipse简介 32.3Navicat简介 4......
  • java毕业设计:基于SSM的超市进销存管理系统【代码+论文+PPT】
    全文内容包括:1、采用技术;2、系统功能;3、系统截图;4、配套内容。索取方式见文末微信号,欢迎关注收藏!一、采用技术语言:Java1.8框架:SSM数据库:MySQL5.7、8.0开发工具:IntelliJIDEA旗舰版其他:Maven3.8以上二、系统功能用户管理:负责系统用户的注册、登录、权限分配及个人信息管理......
  • 基于ST STM32G474的400W Microinverter之数位电源方案
    微型逆变器(Microinverter)是一种独立的太阳能模组,能将太阳能板产生的直流电(DC)转换为交流电(AC)。这种设备在模组阶段就能进行直流电转换和发电功率最佳化,所产生的电力以交流电形式传输,具备更高的安全性和扩充性。每个微型逆变器的输出可以合并回馈至电网或储能设备,特别适合面积较......
  • DL00489-基于深度学习的金属多轴疲劳寿命预测含数据集
    使用深度学习模型(CNN,LSTM和GRU)结合全连接层预测金属多轴疲劳寿命的代码。它处理数据集,利用高质量的数据来有效地训练和评估模型。主要功能是结合时间序列加载路径和材料力学性能对疲劳寿命进行预测。      ......
  • python+flask计算机毕业设计基于的零食销售商城(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着互联网的飞速发展,电子商务已成为现代商业不可或缺的一部分,深刻改变着人们的消费习惯。零食作为日常消费的重要组成部分,其市场潜力巨大......
  • 基于.NET开源、免费的跨平台物联网网关:IoTGateway
    思维导航前言项目介绍项目源代码项目演示项目源码地址优秀项目和框架精选前言今天大姚给大家分享一个基于.NET开源、免费的跨平台物联网网关:IoTGateway。项目介绍IoTGateway是一个基于.NET6的跨平台物联网网关。通过可视化配置,轻松的连接到你的任何设备和系统(如PLC、......
  • Java毕业设计作品:福建厦门城市文化展示系统设计与实现(基于thymeleaf前后端分离 )
      博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。所有项目都配有从入门到精通的基础知识视频课程,学习后应对毕业设计答辩。项目配有对应开发文档、开题报告、任务书......
  • OpenCV开发笔记(七十九):基于Stitcher类实现全景图片拼接
    若该文为原创文章,转载请注明原文出处本文章博客地址:https://hpzwl.blog.csdn.net/article/details/141561865长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…OpenCV开发专栏......