基于SpringBoot的选课调查系统

博主主页: 怪兽毕设
**博主简介:**专注Java技术领域和毕业设计项目实战、Java微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。

技术范围: SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。
**主要内容:**功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导。

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人

🍅文末获取联系🍅

系统介绍

从技术可行性角度看,选择Java语言和SpringBoot框架有助于提高系统的稳定性和性能,同时简化开发流程和提高开发效率。MySQL数据库作为常用的关系型数据库,提供了可靠的数据存储和管理能力,为系统提供了良好的数据支持。技术选型的合理性保证了系统的可靠性和扩展性,有助于满足系统的需求并保持系统的持续运行。

系统包含技术

后端:springboot

前端:vue、js、css等

开发工具:idea/vscode

数据库:mysql 5.7

JDK版本:jdk1.8

功能截图

视频演示

请文末卡片dd我获取更详细的演示视频

代码实现

java 复制代码
/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
    
    @Autowired
    private UserService userService;
    
    @Autowired
    private TokenService tokenService;
 
    /**
     * 登录
     */
    @IgnoreAuth
    @PostMapping(value = "/login")
    public R login(String username, String password, String role, HttpServletRequest request) {
        UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
        if(user != null){
            if(!user.getRole().equals(role)){
                return R.error("权限不正常");
            }
            if(user==null || !user.getPassword().equals(password)) {
                return R.error("账号或密码不正确");
            }
            String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
            return R.ok().put("token", token);
        }else{
            return R.error("账号或密码或权限不对");
        }
 
    }
    
    /**
     * 注册
     */
    @IgnoreAuth
    @PostMapping(value = "/register")
    public R register(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
            return R.error("用户已存在");
        }
        userService.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){
        UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
        if(user==null) {
            return R.error("账号不存在");
        }
        user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
    
    /**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
        PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }
 

源码获取

大家点赞、收藏、关注、评论啦 、查看 👇🏻获取联系方式👇🏻

相关推荐
zhensherlock8 小时前
Protocol Launcher 系列:1Writer iOS 上的 Markdown 文档管理
javascript·笔记·ios·typescript·node.js·iphone·ipad
Rsun045518 小时前
MessageUtils.message(“user.jcaptcha.expire“)
java
zaim18 小时前
计算机的错误计算(二百二十六)
java·python·c#·c·错数·mpmath
EFCY1MJ908 小时前
ASP.NET MVC 1.0 (五) ViewEngine 深入解析与应用实例
后端·asp.net·mvc
小江的记录本8 小时前
【RabbitMQ】RabbitMQ核心知识体系全解(5大核心模块:Exchange类型、消息确认机制、死信队列、延迟队列、镜像队列)
java·前端·分布式·后端·spring·rabbitmq·mvc
!停8 小时前
C++入门—内存管理
java·jvm·c++
海参崴-9 小时前
C语言与C++语言发展历史详解
java·c语言·c++
无尽的罚坐人生9 小时前
hot 100 146. LRU 缓存
java·开发语言·缓存
好家伙VCC9 小时前
**发散创新:基于算子融合的深度学习推理优化实战**在现代AI部署场景
java·人工智能·python·深度学习
吴声子夜歌9 小时前
Node.js——操作MongoDB
数据库·mongodb·node.js