基于SpringBoot实现的信息技术知识赛系统设计与实现【源码+文档】

系统介绍

基于SpringBoot+Vue实现的信息技术知识赛系统采用前后端分离的架构方式,系统设计了管理员、用户两种角色,管理员实现了用户登录、管理员管理、在线学习管理、竞赛论坛管理、赛事信息管理、用户管理、测卷管理、测评管理等功能模块;用户实现了登录、注册、在线学习、测评、赛事报名等功能模块。

技术选型

开发工具:idea2020.3+Webstorm2020.3

运行环境:jdk1.8+maven3.6.0+MySQL5.7+nodejs14.21.3

服务端技术:Springboot+Mybatis-Plus

前端技术:html+css+Layui+jQuery+bootstrap+Vue+axios+Element-UI

成果展示

文档展示

管理端

登录

管理员管理

在线学习管理

用户管理

测卷管理

试题管理

编辑试题

用户端

首页

登录

在线学习

试卷测试

赛事信息

个人中心

测试记录

源码展示

复制代码
@RequestMapping("users")
@RestController
publicclass UsersController {

@Autowired
private UsersService usersService;

@Autowired
private TokenService tokenService;

/**
  * 登录
  */
@IgnoreAuth
@PostMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
  UsersEntity user = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));
if(user==null || !user.getPassword().equals(password)) {
   return R.error("账号或密码不正确");
  }
  String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
  R r = R.ok();
  r.put("token", token);
  r.put("role",user.getRole());
  r.put("userId",user.getId());
return r;
 }

/**
  * 注册
  */
@IgnoreAuth
@PostMapping(value = "/register")
public R register(@RequestBody UsersEntity user){
     if(usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", user.getUsername())) !=null) {
      return R.error("用户已存在");
     }
        usersService.insert(user);
        return R.ok();
    }

/**
  * 退出
  */
@GetMapping(value = "logout")
public R logout(HttpServletRequest request) {
  request.getSession().invalidate();
return R.ok("退出成功");
 }

/**
     * 密码重置
     */
    @IgnoreAuth
@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
     UsersEntity user = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));
     if(user==null) {
      return R.error("账号不存在");
     }
     user.setPassword("123456");
        usersService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
}

账号地址及其他说明

1、地址说明

管理员登录页:http://localhost:8081/

用户首页:http://localhost:8080/xinxijishuzhishisai/front/index.html

2、账号说明

管理员:admin/admin

用户:自行注册

3、目录结构展示

4、项目结构展示

5、以上系统源码,经过博主整理与调试,确保能正常运行!

6、制作不易,点赞、在看、分享再走吧,您的支持永远是我最大的动力!

7、运行步骤

复制代码
1、创建数据库、导入sql脚本
2、修改application.yml中的数据库配置文件,启动服务端
3、在源代码\admin目录下打开cmd,执行npm install或者yarn install下载依赖
4、下载完毕后启动前端npm run serve,访问端口
相关推荐
小旭Coding10 小时前
卧靠!Go 传给前端的 int64 竟然变成了这个?
后端
用户2986985301410 小时前
Word 文档文本查找与替换的 Java 实现方案
java·后端
阿哉10 小时前
Nacos 服务发现源码:藏在背后的两套事件机制,90%的人只讲了一半
java
kunge201310 小时前
深度剖析Claude Code 的CLAUDE.md加载逻辑
后端·vibecoding
米沙AI10 小时前
MSYS2 快速使用版本
后端
Csvn10 小时前
Docker 进阶 — 网络模型、数据持久化与多阶段构建
后端
用户42792540517110 小时前
《微博开放平台官方CLI开源了:70+API一行搞定,AI Agent原生支持》
后端
Csvn10 小时前
文本处理三剑客 — grep、sed、awk 实战精讲
后端
sarasuki10 小时前
JavaScript的对象、new的机制与原型包装类
javascript·后端