课设-基于SpringBoot校园论坛系统

该系统采用SpringBoot和HTML技术实现,支持管理员与用户发布、编辑、删除文章等功能,并提供登录、注册及用户主页展示等模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:开发工具:idea,数据库:MySQL5.7 jdk1.8
架构:SpringBoot,前端HTML
主要功能
管理员:发布文章、文章评论、搜索指定文章、删除文章、编辑文章、查看自己发布的文章、查看自己发布的评论、管理员置顶发帖、按最新查看文章、按访问最多查看文章、按评论最多查看文章
用户:发布文章、文章评论、搜索指定文章、删除文章、编辑文章、查看自己发布的文章、查看自己发布的评论、按最新查看文章、按访问最多查看文章、按评论最多查看文章

项目图片:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分代码:

 //登录
    @PostMapping("/login")
    @ResponseBody
    public CommonReturnType login(@RequestBody UserLoginVO userLoginVO, HttpSession session){

        if(userLoginVO.getMail() == null || userLoginVO.getPassword() == null)
            return CommonReturnType.fail(EmBusinessError.PARAMETER_VALIDATION_ERROR, "邮箱或密码不能为空");

        UserModel userModel = userService.login(userLoginVO);
        if(userModel == null){
            return CommonReturnType.fail(EmBusinessError.USER_LOGIN_FAIL_ERROR);
        }
        UserInfoVO userInfoVO = convertFromUserModel(userModel);
        session.setAttribute("user", userInfoVO);
        Cache.addLoginUser(userInfoVO);
        return CommonReturnType.success("登录成功");
    }

    //注册
    @PostMapping("/register")
    @ResponseBody
    public CommonReturnType register(@Validated @RequestBody UserLoginVO userLoginVO){
        //用户名查重
        UserModel result = userService.findUserByUserName(userLoginVO.getUserName());
        if(result != null){
            return CommonReturnType.fail(EmBusinessError.USER_NAME_EXIST_ERROR);
        }
        //用户邮箱查重
        result = userService.findUserByUserMail(userLoginVO.getMail());
        if(result != null){
            return CommonReturnType.fail(EmBusinessError.USER_MAIL_EXIST_ERROR);
        }

        UserModel user = userService.register(userLoginVO);
        if(user == null){
            return CommonReturnType.fail(EmBusinessError.DATABASE_OPTION_ERROR, "注册失败请重试");
        }
        return CommonReturnType.success("注册成功");
    }

    //退出登录
    @GetMapping("/logout")
    public String logout(HttpSession session){
        session.removeAttribute("user");
        return "redirect:/";
    }

    //用户主页
    @GetMapping("/user/home/{userId}")
    public String home(@PathVariable("userId") int userId, Model model, @RequestParam(value = "page", required =
            false, defaultValue = "1") int page){
        // 分页获取用户发表的所有文章
        PaginationVO<ArticleListItemVO> articleListPaginationVO = articleService.findListPaginationByUserId(userId,
                page);
        model.addAttribute("articleListPagination", articleListPaginationVO);

        UserModel userModel = userService.findUserById(userId);
        UserInfoVO userInfoVO = convertFromUserModel(userModel);
        model.addAttribute("userInfo", userInfoVO);
        return "user/home";
    }

    //文章管理
    @GetMapping("/user/articles")
    public String articles(){
        return "user/articles";
    }

B站视频链接:

课设-基于SpringBoot校园论坛系统

获取方式:联系下方名片获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机毕业设计,

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值