最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

前后端分離Springboot+Vue實(shí)現(xiàn)課程社區(qū)管理系統(tǒng)

2022-09-23 11:51 作者:指南針畢業(yè)設(shè)計(jì)  | 我要投稿



項(xiàng)目編號(hào):BS-XX-141

一,項(xiàng)目簡(jiǎn)介

本項(xiàng)目主要實(shí)現(xiàn)一個(gè)基于課程選課的社區(qū)交流系統(tǒng),主要的業(yè)務(wù)背景為每個(gè)老師可以自己開設(shè)相應(yīng)的選修課,并指定可以選修的人數(shù),學(xué)生登陸系統(tǒng)后可以進(jìn)行選課,并可以在線針對(duì)自己的選課進(jìn)行在線討論,點(diǎn)贊等互動(dòng)行為。管理員則主要是對(duì)基本信息的相關(guān)管理,比如用戶和角色、權(quán)限管理等,本系統(tǒng)有著完備的權(quán)限管理控制系統(tǒng),可以根據(jù)需要自定角色并分配相應(yīng)的權(quán)限。系統(tǒng)采用前后端分離開發(fā)的方式來(lái)實(shí)現(xiàn)。


二,環(huán)境介紹

語(yǔ)言環(huán)境:Java:? jdk1.8

數(shù)據(jù)庫(kù):Mysql: mysql5.7

應(yīng)用服務(wù)器:Tomcat:? tomcat8.5.31

開發(fā)工具:IDEA或eclipse

前端技術(shù):jsp+easyui+ajax+jquery

后端技術(shù):spring+springmvc+mybatis+定時(shí)任務(wù)


三,系統(tǒng)展示

下面展示一下系統(tǒng)的主要功能:

登陸頁(yè)面:

編輯



用戶注冊(cè)


編輯


用戶管理


編輯


菜單管理

編輯


角色管理

編輯


權(quán)限分配

編輯

個(gè)人信息

編輯


學(xué)生登陸系統(tǒng)

編輯

選課

編輯


參與所選課程的社區(qū)討論

編輯


老師登陸系統(tǒng)

開設(shè)課程

編輯


參與社區(qū)討論

編輯

四,核心代碼展示


package com.course.api.controller;import com.course.api.config.Result.Result;import com.course.api.config.Result.Results;import com.course.api.entity.Comment;import com.course.api.service.Impl.CommentServiceImpl;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;@RestController@RequestMapping("/comment")public class CommentController { ? ?@Autowired ? ?CommentServiceImpl commentService; ? ?/** ? ? * 查詢當(dāng)前課程的論壇數(shù)據(jù) ? ? * @param courseId ? ? * @return List ? ? */ ? ?@GetMapping("getCommentList") ? ?public Result ?getCommentList(@RequestParam Long courseId) { ? ? ? ?return Results.success(commentService.getCommentInfo(courseId)); ? ?} ? ?/** ? ? * 添加評(píng)論 ? ? * @param comment ? ? * @return ? ? */ ? ?@PostMapping("/add") ? ?public Result add(@RequestBody Comment comment) { ? ? ? ?commentService.addComment(comment); ? ? ? ?return Results.success(); ? ?} ? ?/** ? ? * 刪除評(píng)論 ? ? * @param id ? ? * @return ? ? */ ? ?@DeleteMapping("/delete/{id}") ? ?public Result remove(@PathVariable(value = "id") Long id) { ? ? ? ?commentService.removeById(id); ? ? ? ?return Results.success(); ? ?} }


package com.course.api.controller;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.course.api.config.Result.Result;import com.course.api.config.Result.Results;import com.course.api.entity.CommentThumbs;import com.course.api.service.Impl.CommentThumbsImpl;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;@RestController@RequestMapping("/commentThumbs")public class CommentThumbsController { ? ?@Autowired ? ?CommentThumbsImpl commentThumbsService; ? ?/** ? ? * 獲取用戶點(diǎn)贊的帖子 ? ? * @param userId ? ? * @return ? ? */ ? ?@GetMapping("/getLikeComments") ? ?public Result getLikeComments(@RequestParam Long userId) { ? ? ? ?return Results.success(commentThumbsService.list(new QueryWrapper<CommentThumbs>().eq("user_id", userId))); ? ?} ? ?/** ? ? * 點(diǎn)贊 ? ? * @param commentThumbs ? ? * @return ? ? */ ? ?@PostMapping("/giveThumbs") ? ?public Result giveThumbs(@RequestBody CommentThumbs commentThumbs) { ? ? ? ?commentThumbsService.addThumbs(commentThumbs); ? ? ? ?return Results.success(); ? ?} ? ?/** ? ? * 取消點(diǎn)贊 ? ? * @param id ? ? * @return ? ? */ ? ?@DeleteMapping("/cancel/{id}") ? ?public Result cancel(@PathVariable(value = "id") Long id) { ? ? ? ?commentThumbsService.cancelThumbs(id); ? ? ? ?return Results.success(); ? ?} }


package com.course.api.controller;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.core.metadata.IPage;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.course.api.config.Result.Result;import com.course.api.config.Result.Results;import com.course.api.entity.Course;import com.course.api.service.Impl.CourseServiceImpl;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;@RestController@RequestMapping("/course")public class CourseController { ? ?@Autowired ? ?CourseServiceImpl courseService; ? ?/** ? ? * 獲取課程分頁(yè)數(shù)據(jù) ? ? * @param page ? ? * @param pageSize ? ? * @param teacherId ? ? * @return ? ? */ ? ?@GetMapping("/getCourseList") ? ?public Result getCourseList(@RequestParam int page, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?@RequestParam int pageSize, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?@RequestParam(defaultValue = "0") Long teacherId) { ? ? ? ?IPage<Course> courseIPage = new Page<>(page, pageSize); ? ? ? ?QueryWrapper<Course> queryWrapper = new QueryWrapper<>(); ? ? ? ?if (teacherId > 0) { ? ? ? ? ? ?queryWrapper.eq("teacher_id", teacherId); ? ? ? ?} ? ? ? ?return Results.success(courseService.page(courseIPage, queryWrapper)); ? ?} ? ?/** ? ? * 獲取全部課程信息 ? ? * @return ? ? */ ? ?@GetMapping("/getAllCourseList") ? ?public Result getAllCourseList() { ? ? ? ?return Results.success(courseService.list()); ? ?} ? ?/** ? ? * 添加課程 ? ? * @param course ? ? * @return newCourseId ? ? */ ? ?@PostMapping("/add") ? ?public Result add(@RequestBody Course course) { ? ? ? ?courseService.save(course); ? ? ? ?List<Course> courseList = courseService.list(); ? ? ? ?System.out.println(courseList.get(courseList.size() - 1).getId()); ? ? ? ?return Results.success(courseList.get(courseList.size() - 1).getId()); ? ?} ? ?/** ? ? * 修改課程信息 ? ? * @param course ? ? * @return ? ? */ ? ?@PutMapping("update") ? ?public Result update(@RequestBody Course course) { ? ? ? ?if (courseService.updateById(course)) return Results.success(); ? ? ? ?else return Results.failure("編輯失敗"); ? ?} ? ?/** ? ? * 刪除課程 ? ? * @param id ? ? * @return ? ? */ ? ?@DeleteMapping("delete/{id}") ? ?public Result remove(@PathVariable(value = "id") Long id) { ? ? ? ?if (courseService.removeById(id)) return Results.success(); ? ? ? ?else return Results.failure("刪除失敗"); ? ?} ? ?/** ? ? * 選課 ? ? * @param courseId ? ? * @param userId ? ? * @return ? ? */ ? ?@PutMapping("/selectCourse/{courseId}/{userId}") ? ?public Result selectCourse(@PathVariable(value = "courseId") Long courseId, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? @PathVariable(value = "userId") Long userId) { ? ? ? ?courseService.selectCourseById(courseId, userId); ? ? ? ?return Results.success(); ? ?} ? ?/** ? ? * 退選 ? ? * @param courseId ? ? * @param userId ? ? * @return ? ? */ ? ?@PutMapping("deselectCourse/{courseId}/{userId}") ? ?public Result deselectCourse(@PathVariable(value = "courseId") Long courseId, ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? @PathVariable(value = "userId") Long userId) { ? ? ? ?courseService.deselectCourseById(courseId, userId); ? ? ? ?return Results.success(); ? ?} }


package com.course.api.controller;import com.course.api.config.Result.Result;import com.course.api.config.Result.Results;import com.course.api.entity.Menu;import com.course.api.mapper.RoleMenuMapper;import com.course.api.service.Impl.MenuServiceImpl;import com.course.api.service.Impl.RoleServiceImpl;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;@RestController@RequestMapping("/menu")public class MenuController { ? ?@Autowired ? ?MenuServiceImpl menuService; ? ?@Autowired ? ?RoleServiceImpl roleService; ? ?@Autowired ? ?RoleMenuMapper roleMenuMapper; ? ?/** ? ? * 獲取菜單信息 ? ? * @param name ? ? * @return ? ? */ ? ?@GetMapping("/getTreeMenu") ? ?public Result getTreeMenu(@RequestParam(defaultValue = "") String name) { ? ? ? ?return Results.success(menuService.selectTreeMenu(name)); ? ?} ? ?/** ? ? * 添加菜單 ? ? * @param menu ? ? * @return ? ? */ ? ?@PostMapping("/add") ? ?public Result add(@RequestBody Menu menu) { ? ? ? ?return Results.success(menuService.save(menu)); ? ?} ? ?/** ? ? * 編輯菜單 ? ? * @param menu ? ? * @return ? ? */ ? ?@PutMapping("/update") ? ?public Result update(@RequestBody Menu menu) { ? ? ? ?return Results.success(menuService.updateById(menu)); ? ?} ? ?/** ? ? * 刪除菜單 ? ? * @param id ? ? * @return ? ? */ ? ?@DeleteMapping("/delete/{id}") ? ?public Result remove(@PathVariable(value = "id") Long id) { ? ? ? ?return Results.success(menuService.removeById(id)); ? ?} ? ?/** ? ? * 獲取對(duì)應(yīng)角色的路由信息 ? ? * @param userType ? ? * @return ? ? */ ? ?@GetMapping("/getRouteList") ? ?public Result getRouteList(@RequestParam String userType) { ? ? ? ?Long roleId = roleService.selectRoleId(userType); ? ? ? ?List<Long> menuIds = roleMenuMapper.selectByRoleId(roleId); ? ? ? ?List<Menu> menus = menuService.selectTreeMenu(""); ? ? ? ?// 對(duì)查出的所有菜單針對(duì)對(duì)應(yīng)角色進(jìn)行過濾 ? ? ? ?List<Menu> roleMenu = menuService.filterMenu(menus, menuIds); ? ? ? ?return Results.success(roleMenu); ? ?} }


五,項(xiàng)目總結(jié)

本系統(tǒng)基于前后端分離開發(fā)實(shí)現(xiàn),界面設(shè)計(jì)簡(jiǎn)潔大方,人機(jī)交互方便,適合做課程設(shè)計(jì)與畢業(yè)設(shè)計(jì)。


前后端分離Springboot+Vue實(shí)現(xiàn)課程社區(qū)管理系統(tǒng)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
石城县| 抚宁县| 繁峙县| 浑源县| 东乌珠穆沁旗| 扎鲁特旗| 合山市| 淳化县| 微山县| 明溪县| 闻喜县| 德州市| 沧州市| 名山县| 中牟县| 门头沟区| 读书| 阳春市| 梨树县| 福贡县| 南平市| 巴楚县| 红安县| 土默特右旗| 海盐县| 梅河口市| 桃园县| 田阳县| 漠河县| 宣威市| 桐乡市| 泗阳县| 红河县| 孝义市| 项城市| 麟游县| 海城市| 邓州市| 墨脱县| 锡林郭勒盟| 湖南省|