Springboot学生成绩管理系统idea开发mysql数据库web结构java编程计算机网页源码maven项目

news2024/12/23 6:24:23

一、源码特点
  springboot 学生成绩管理系统是一套完善的信息系统,结合springboot框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统
具有完整的源代码和数据库,系统主要采用B/S模式开发。

Springboot学生成绩管理系统idea开发mysql数


前段主要技术 bootstrap.css jquery
后端主要技术 springboot
数据库 mysql
开发工具 IDEA  JDK1.8 TOMCAT 8.5

二、功能介绍
本系统模块实现功能如下:
1.用户管理模块包括对系统内用户信息的发布,修改,查看,删除等功能。
(1)对系统用户的发布:发布用户的信息,按照用户页面给出的表单进行填写,填写完毕后点击确定即可。
(2)对系统用户的修改:修改用户的信息,在系统用户列表中直接点击修改,按照页面给出的表单进行填写,填写完毕后点击确定。
(3)对系统用户的删除:删除用户信息,在系统用户列表中直接点击删除.
(4)对系统用户的查看:查看用户信息,在系统用户列表中直接点击查看。
2.课程管理模块包括对系统内课程信息的发布,修改,查看,删除等功能。
(1)对系统课程的发布:发布课程的信息,按照课程页面给出的表单进行填写,填写完毕后点击确定即可。
(2)对系统课程的修改:修改课程的信息,在系统课程列表中直接点击修改,按照页面给出的表单进行填写,填写完毕后点击确定。
(3)对系统课程的删除:删除课程信息,在系统课程列表中直接点击删除.
(4)对系统课程的查看:查看课程信息,在系统课程列表中直接点击查看。
3.成绩管理模块包括对系统内成绩信息的发布,修改,查看,删除等功能。
(1)对系统成绩的发布:发布成绩的信息,按照成绩页面给出的表单进行填写,填写完毕后点击确定即可。
(2)对系统成绩的修改:修改成绩的信息,在系统成绩列表中直接点击修改,按照页面给出的表单进行填写,填写完毕后点击确定。
(3)对系统成绩的删除:删除成绩信息,在系统成绩列表中直接点击删除.
(4)对系统成绩的查看:查看成绩信息,在系统成绩列表中直接点击查看。

数据库设计

CREATE TABLE `userinfo` (
`id` int(11) NOT NULL auto_increment,
`username` VARCHAR(40) default NULL COMMENT '用户名',
`password` VARCHAR(40) default NULL COMMENT '密码',
`classname` VARCHAR(40) default NULL COMMENT '班级',
`sex` VARCHAR(40) default NULL COMMENT '性别',
`imageurl` VARCHAR(40) default NULL COMMENT '头像',
`roles` VARCHAR(40) default NULL COMMENT '角色',  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `course` (
`id` int(11) NOT NULL auto_increment,
`courseName` VARCHAR(400) default NULL COMMENT '课程名称',
`teacherName` VARCHAR(40) default NULL COMMENT '任课教师',  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `scoreinfo` (
`id` int(11) NOT NULL auto_increment,
`studentId` VARCHAR(40) default NULL COMMENT '学生',
`courseId` VARCHAR(40) default NULL COMMENT '课程',
`addtime` VARCHAR(40) default NULL COMMENT '添加时间',
`score` VARCHAR(40) default NULL COMMENT '成绩',  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;


代码设计


   /**课程列表 查询course
	 * 
	 */
    @RequestMapping(value = "listpage")
    public ModelAndView  listpage(HttpServletRequest request, HttpServletResponse response)  {
        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
      Map<String,Object> map= new HashMap<String,Object>();

        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("course/courselist");//跳转jsp 页面
	String sql="";
        String id=(String)request.getParameter("id");
        if(id!=null&&!id.equals("")){
           // System.out.println(id);
          	sql+=" and id like '%"+id+"%'";//符合条件 拼接sql 课程编号

        }
        String courseName=(String)request.getParameter("courseName");
        if(courseName!=null&&!courseName.equals("")){
           // System.out.println(courseName);
          	sql+=" and courseName like '%"+courseName+"%'";//符合条件 拼接sql 课程名称

        }
        String teacherName=(String)request.getParameter("teacherName");
        if(teacherName!=null&&!teacherName.equals("")){
           // System.out.println(teacherName);
          	sql+=" and teacherName like '%"+teacherName+"%'";//符合条件 拼接sql 任课教师

        }


        List list=null;
	try{
	list=coursedao.querylist(sql);//查询course 表数据返回 list对象
	}catch(Exception e){
            e.printStackTrace();;
        }

        mav.addObject("list",list);//赋值变量
       

        return mav;
    }

	 /**课程添加方法 对表 course 进行添加
	 * 
	 */
    @RequestMapping(value = "add")
    public ModelAndView  add(HttpServletRequest request, HttpServletResponse response){

        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("course/courseadd");
        course bean=new course();
	
        String id=(String)request.getParameter("id");//课程编号 变量
        bean.setId(id);//赋值封装

        String courseName=(String)request.getParameter("courseName");//课程名称 变量
        bean.setCourseName(courseName);//赋值封装

        String teacherName=(String)request.getParameter("teacherName");//任课教师 变量
        bean.setTeacherName(teacherName);//赋值封装

	try{
        coursedao.add(bean);//执行 添加 course 添加操作
	 }catch(Exception e){
            e.printStackTrace();;
        }
	

       

        request.setAttribute("msg", "<script>alert('添加成功');</script>");//操作提示

        return addpage(request,response);

    }
	/**课程添加页面 
	 * 
	 */

    @RequestMapping(value = "addpage")
    public ModelAndView  addpage(HttpServletRequest request, HttpServletResponse response){
           try {
            request.setCharacterEncoding("gb2312");//强制字符集
	    // request.setAttribute("conn",jdbcTemplate.getDataSource().getConnection());
        }catch(Exception e){
            e.printStackTrace();
        }
        ModelAndView mav = new ModelAndView();//初始化对象
        mav.setViewName("course/courseadd");//跳转页面对象
       


三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件DBO.java
2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。
3、数据库文件名是jspxscj.sql 系统名称xscj
4、地址:http://127.0.0.1:8080/login.jsp

四 系统实现


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1063488.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

golang gin——controller 模型绑定与参数校验

controller 模型绑定与参数校验 gin框架提供了多种方法可以将请求体的内容绑定到对应struct上&#xff0c;并且提供了一些预置的参数校验 绑定方法 根据数据源和类型的不同&#xff0c;gin提供了不同的绑定方法 Bind, shouldBind: 从form表单中去绑定对象BindJSON, shouldB…

【MVC】C# MVC基础知识点、原理以及容器和管道

给自己一个目标&#xff0c;然后坚持一段时间&#xff0c;总会有收获和感悟&#xff01; 国庆假期马上结束&#xff0c;闲暇时间&#xff0c;重温一遍C#关于MVC的技术&#xff0c;控制器、视图、模型&#xff0c;知识点和原理&#xff0c;小伙伴们还记得吗 目录 一、MVC知识点1…

纸质书籍OCR方案大揭秘,快来看看有哪些神奇的黑科技

随着数字化时代的来临&#xff0c;纸质书籍逐渐被电子书所替代。在将纸质书籍转换为电子格式的过程中&#xff0c;扫描电子书目录并进行文字识别&#xff08;OCR&#xff0c;Optical Character Recognition&#xff09;成为了一项重要的工作。OCR技术能够将纸质书籍中的文字内容…

如何使用 Overleaf 编写 LaTeX 文档

如何使用 Overleaf 编写 LaTeX 文档 &#x1f607;博主简介&#xff1a;我是一名正在攻读研究生学位的人工智能专业学生&#xff0c;我可以为计算机、人工智能相关本科生和研究生提供排忧解惑的服务。如果您有任何问题或困惑&#xff0c;欢迎随时来交流哦&#xff01;&#x1f…

Firefly-LLaMA2-Chinese - 开源中文LLaMA2大模型

文章目录 关于模型列表 & 数据列表训练细节增量预训练 & 指令微调数据格式 & 数据处理逻辑增量预训练指令微调模型推理权重合并模型推理部署关于 github : https://github.com/yangjianxin1/Firefly-LLaMA2-Chinese本项目与Firefly一脉相承,专注于低资源增量预训练…

模糊搜索利器:Python的thefuzz模块详解

文章目录 thefuzz模块简介thefuzz模块的参数和方法使用thefuzz实现模糊搜索在Python中,thefuzz模块是一个用于实现模糊搜索的强大工具。它可以帮助我们在处理字符串时,快速找到相似的匹配项。本文将详细介绍thefuzz模块的功能和用法,并结合代码示例演示如何实现模糊搜索。 t…

有自动交易股票的软件么,怎么实现全自动交易?

随着技术的发展&#xff0c;我们经常会在看到一些关于自动交易股票软件的宣传。那么&#xff0c;这些软件是否真的存在&#xff1f;如何实现全自动交易呢&#xff1f; 股票量化程序化自动交易接口 一、自动交易股票软件存在吗&#xff1f; 答案是有&#xff0c;部分券商已经对…

Python数据容器——集合的相关操作

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 本文专栏&#xff1a;Python专栏 专栏介绍&#xff1a;本专栏为免费专栏&#xff0c;并且会持续更新python基础知识&#xff0c;欢迎各位订阅关注。 目录 一、理解集合 1. 集合是什么&#xff1f; 2. 为什么…

typora + picgo + 对象存储 OSS

文章目录 一、安装软件二、使用阿里云 oss 存储图片三、picgo 设置四、typora 设置自动上传 一、安装软件 Typora1.3.8 &#xff08;安装即破解&#xff09; picgo 2.3.0 安装 阿里云盘&#xff08;软件安装包&#xff09;&#xff1a; https://www.aliyundrive.com/s/saQoS…

Windows10实用的12个快捷组合键

Windows10实用的12个快捷组合键 1、网页多标签切换 CTRL TAB 2、恢复不小心关闭的标签页 CTRLSHIFT T 3、新建标签页 CTRL T 4、高亮选择地址栏 ALT D 5、打开设置 WIN I 6、打开任务管理器 CTRLSHIFT ESC 7、打开文件资源管理器 WIN E 8、黑屏或屏幕卡顿无响应&#x…

python实验(超详细)

目录 实验一 python编程基础实验二 python序列、字符串处理实验三 函数及python类的定义与使用实验四 python综合应用 实验一 python编程基础 在交互式环境中打印“Hello world”字符串。记录操作过程。 略 创建脚本helloworld.py&#xff0c;在命令符提示环境中执行程序&…

【Oracle】Oracle系列十八--Oracle RAC

文章目录 往期回顾前言1. Oracle RAC介绍1.1 基本概念1.2 Oracle RAC应用场景1.3 Oracle RAC的优缺点 2. Oracle RAC架构3. Oracle RAC 的安装 往期回顾 【Oracle】Oracle系列之一–Oracle数据类型 【Oracle】Oracle系列之二–Oracle数据字典 【Oracle】Oracle系列之三–Orac…

CDN网络基础入门:CDN原理及架构

背景 互联网业务的繁荣让各类门户网站、短视频、剧集观看、在线教育等内容生态快速发展&#xff0c;互联网流量呈现爆发式增长&#xff0c;自然也面临着海量内容分发效率上的挑战&#xff0c;那么作为终端用户&#xff0c;我们获取资源的体验是否有提升呢&#xff1f; 答案是…

网络层·IP协议

承接前文TCP协议-CSDN博客 简介 协议头格式 网段划分(重要) 划分方法 IP地址的数量限制(背景介绍) 私有IP地址和公网IP地址(提出解决思路) NAT技术(解决方法) 路由 网络层 在复杂的网络环境中确定一个合适的路径 IP协议 主机: 配有IP地址, 可以认为就是你的电脑; 路由器:…

2.SpringBoot项目搭建

SpringBoot项目搭建 JavaEE对新手非常友好的 搭建框架。 集成了JavaEE开发中大部分的功能。 1.进行创建 2.进行配置 点击创建&#xff0c;springboot项目创建完成&#xff0c;下篇是安装lombok & maven镜像设置 设置完成后之后便可以启动项目了。 3.各个部分说明

【最新】如何在CSDN个人主页左侧栏添加二维码?侧边推广怎么弄?

目录 引言 效果展示 步骤讲解 引言 当你决定在CSDN上展示自己的技术才能和项目时&#xff0c;&#x1f4a1; 将你的个人主页变得更炫酷和引人注目是必不可少的&#xff01;在这篇博客中&#xff0c;我们将向你揭开神秘的面纱&#xff0c;教你如何在CSDN个人主页的左侧栏上添…

分享一款yyds!电子期刊制作网站

大家好&#xff0c;今天要跟大家分享一个超级赞的资源&#xff01;有没有曾经你苦苦寻找的那一款适合自己的电子期刊制作网站呢&#xff1f;下面就让我来给大家详细介绍一个非常棒的网站&#xff0c;有了它&#xff0c;你可以轻松制作出专业、精美的电子期刊&#xff01; 1.打开…

突破封锁|华为芯片10年进化史:从K3V1到麒麟9000S

华为海思麒麟芯片过去10年研发历程回顾如下&#xff1a; 2009年&#xff1a;华为推出第一款手机芯片K3V1&#xff0c;采用65nm工艺制程&#xff0c;基于ARM11架构&#xff0c;主频600MHz&#xff0c;支持WCDMA/GSM双模网络。这款芯片搭载在华为U8800手机上&#xff0c;标志着华…

基于时空注意力融合网络的城市轨道交通假期短时客流预测

导读 本论文于2023年发表于交通领域知名期刊《IEEE Intellgent Transportations Systems Magazine》上。该论文旨在研究节假日期间城市轨道交通进站流预测问题&#xff0c;通过搭建时空注意力融合网络&#xff0c;有效融合客流数据和节假日相关社交媒体数据&#xff0c;充分捕捉…

golang gin——文件上传(单文件,多文件)

文件上传 单文件上传 从form-data获取文件 package uploadimport ("github.com/gin-gonic/gin""net/http" ) // 单文件上传&#xff0c;多文件上传 func Upload(c *gin.Context) {file, _ : c.FormFile("file") // file为字段名dst : "…