基于SpringBoot+Mybatis+layui的学生成绩管理系统
随着全球信息化的发展,人们的生活节奏越来越快,对信息的时效性越来越重视。以传统的宣传方式为载体的传统媒介早已不能满足用户对获取信息的方式、便捷性的需求。所以平时成绩管理系统渐渐成为用户关注的焦点。首先,平时成绩管理系统,网上获取信息的实时性、便捷性要远远高于传统媒个。系统一经上线,无论用户在世界的哪个角落,只要能够连接互联网,就能在第一时间获得想要的信息。
以往的教育教学相关信息管理,都是工作人员手工统计。这样即浪费时间,时效性低,而且需要查找和变更的时侯很不方便。随着科学的进步,技术的成熟,计算机信息化也日新月异的发展,社会也已经深刻的认识,计算机功能非常的强大,计算机已经进入了人类社会发展的各个领域,并且发挥着十分重要的作用。计算机技术在现代管理中的应用,使计算机成为用户应用现代技术的重要工具。能够有效的解决获取信息便捷化、全面化的问题,提高效率。
本系统中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来,通过SpringBoot+Mybatis整合框架。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。本系统的开发使获取平时成绩管理系统信息能够更加方便快捷,同时也使平时成绩管理系统信息变的更加系统化、有序化。系统界面较友好,易于操作。
一.开发环境
IDEA + JDK8 + MySQL5.7/8.0 + navicate
二.技术栈
Springboot+Mybatis+layui
三.需要修改配置
如果本地数据库版本为mysql8.0,修改以下配置。
Mysql8连接配置
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.25</version></dependency>
驱动
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
路径
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/score?autoReconnect=true&useUni code=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
四、配置流程
1.导入score数据库
2.导入项目源码
3.修改resources下的数据库信息
4.运行com.score.boot.StartApplication的main方法即可
5.访问http://localhost:8088/login.html
测试用户密码:
(1)教师:admin/123456
(2)学生:201723132/201723132
其他用户信息可以查询数据库表数据
pom.xml文件描述了一个使用Spring Boot框架、整合了MyBatis、Druid等技术的Java项目。还定义了项目的依赖关系和构建配置。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.score.study</groupId><artifactId>StudentScore</artifactId><version>0.0.1-SNAPSHOT</version><name>StudentScore</name><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.2.RELEASE</version></parent><!-- 添加相关依赖 --><dependencies><!-- 添加web支持的starter --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- spingBoot整合Mybatis --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.2.0</version></dependency><!-- 数据源 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.29</version></dependency><!-- mysql驱动包 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.25</version></dependency><!-- 好用的分页插件 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>4.1.0</version></dependency></dependencies><!-- 添加编译和打包的相关插件 --><build><!-- 添加Spring boot编译插件 --><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>
</project>
mybatis-config.xml文件用于配置PageHelper插件的各种属性,用于在MyBatis中实现分页查询。其中,元素的配置提供了很多可选项,可以根据实际需要进行调整。此外,还有一些注释提供了配置参数的说明。这种配置方式使得使用PageHelper插件变得更加灵活,可以根据具体需求进行定制。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration>
<plugins><!-- com.github.pagehelper为PageHelper类所在包名 --><plugin interceptor="com.github.pagehelper.PageHelper"><!-- 4.0.0以后版本可以不设置该参数 --><property name="dialect" value="mysql"/><!-- 该参数默认为false --><!-- 设置为true时,会将RowBounds第一个参数offset当成pageNum页码使用 --><!-- 和startPage中的pageNum效果一样--><property name="offsetAsPageNum" value="true"/><!-- 该参数默认为false --><!-- 设置为true时,使用RowBounds分页会进行count查询 --><property name="rowBoundsWithCount" value="true"/><!-- 设置为true时,如果pageSize=0或者RowBounds.limit = 0就会查询出全部的结果 --><!-- (相当于没有执行分页查询,但是返回结果仍然是Page类型)--><property name="pageSizeZero" value="true"/><!-- 3.3.0版本可用 - 分页参数合理化,默认false禁用 --><!-- 启用合理化时,如果pageNum<1会查询第一页,如果pageNum>pages会查询最后一页 --><!-- 禁用合理化时,如果pageNum<1或pageNum>pages会返回空数据 --><property name="reasonable" value="false"/><!-- 3.5.0版本可用 - 为了支持startPage(Object params)方法 --><!-- 增加了一个`params`参数来配置参数映射,用于从Map或ServletRequest中取值 --><!-- 可以配置pageNum,pageSize,count,pageSizeZero,reasonable,orderBy,不配置映射的用默认值 --><!-- 不理解该含义的前提下,不要随便复制该配置 --><property name="params" value="pageNum=pageHelperStart;pageSize=pageHelperRows;"/><!-- 支持通过Mapper接口参数来传递分页参数 --><property name="supportMethodsArguments" value="false"/><!-- always总是返回PageInfo类型,check检查返回类型是否为PageInfo,none返回Page --><property name="returnPageInfo" value="none"/></plugin>
</plugins>
</configuration>
SpringApplication.run(StartApplication.class, args);用于启动Spring Boot应用。这个启动类的作用是配置和启动Spring Boot应用,通过注解的方式配置Spring的各种功能,包括自动化配置、组件扫描以及MyBatis的Mapper接口扫描。
package com.score.boot;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;@SpringBootApplication //SpringBoot启动类注解
@EnableAutoConfiguration //开启自动化配置
@ComponentScan("com.score") //类似于Spring的基础类扫描包,用来扫描实体,接口和控制器
@MapperScan("com.score.dao") //mybatis的接口扫描包
public class StartApplication {public static void main(String[] args) {SpringApplication.run(StartApplication.class, args);}
}
maven解析jar包之后,直接启动
启动成功。
Spring框架在应用启动时输出的日志信息,它展示了Web应用中的URL映射信息。
这里我们设置的8088端口,我们直接打开我们的映射端口就可以了
http://localhost:8088
测试用户密码:
(1)教师:admin/123456
(2)学生:201723132/201723132
ok,也是可以成功登录教授端,数据请求和传递也正常。
我们进行最基本的增删改查测试。
修改性别为男,名字为theshy。
ok,这里也是成功修改。
看一下sql数据库信息,也是正常的。
删除这条数据。
也是可以正常删除。
增删改成绩后面也是可以的,就不一 一介绍了。
登陆学生端。
账号:201723132
密码:201723132
经过对一系列测试结果的有效分析,本平台开发系统符合用户的要求和需求。所有的基本功能相对产全,操作起来简单方便,测试系统性能良好。整体设计和代码逻辑还是很好的!