基于javaweb的SpringBoot课程管理系统(java+springboot+vue+maven+mybatis+mysql)

运行环境

Java≥8、MySQL≥5.7、Node.js≥14

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可

❗没学过node.js的不要搞前后端分离项目

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

070023522402

080023522402

090023522402

100023522402

110023522402

基于javaweb的SpringBoot课程管理系统(java+springboot+vue+maven+mybatis+mysql)

一、项目运行 环境配置:

Jdk1.8 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。

项目技术:

Spring + SpringBoot+ mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
     * @param courseWare 课件VO
*/
@PostMapping("/create")
public ResultVO<CourseWareVO> createCourseWare(@RequestBody CourseWareVO courseWare){
return courseWareService.createCourseWare(courseWare);
}

/**
* 教师更新课件
* @param courseWare 课件VO
*/
@PostMapping("/update")
public ResultVO<CourseWareVO> updateCourseWare(@RequestBody CourseWareVO courseWare){
return courseWareService.updateCourseWare(courseWare);
}

/**
* 教师删除课件
* @param courseWareId 课件Id
*/
@PostMapping("/delete/{courseWareId}")
public ResultVO<String> deleteCourseWare(@PathVariable Integer courseWareId){
return courseWareService.deleteCourseWare(courseWareId);
}
}
package cn.seecoder.courselearning.controller.coupon;



@RestController
@RequestMapping("/coupon")
public class CouponController {
@Resource
CouponService couponService;

// 创建优惠券
@PostMapping("/create")
ResultVO<CouponVO> createCoupon(@RequestBody CouponDTO universalCouponDTO) {
return couponService.createCoupon(universalCouponDTO);
}

// 查看所有的优惠券
@GetMapping("/getAll")
ResultVO<List<CouponVO>> getAll() {
return couponService.getAllAvailableCoupons();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 * @return
*/
@PostMapping("/testCreate")
ResultVO<CourseTestVO> createTest(@RequestBody CourseTestDTO courseTestDTO) {
return courseTestService.createTest(courseTestDTO);
}

/**
* 教师修改测试信息
* @param courseTestDTO
* @return
*/
@PostMapping("/testFix")
ResultVO<CourseTestVO> fixTest(@RequestBody CourseTestDTO courseTestDTO) {
return courseTestService.fixTest(courseTestDTO);
}

/**
* 教师删除某个测试
* @param courseTestDTO
* @return
*/
@PostMapping("/testDelete")
ResultVO deleteQuestion(@RequestBody CourseTestDTO courseTestDTO) {
return courseTestService.deleteTest(courseTestDTO);
}

/**
* 老师获得自己创建的全部测试
* @param teacherId
* @return
*/
@GetMapping("/testGet/teacher/{teacherId}")
ResultVO<List<CourseTestVO>> getTestsByTeacherId(@PathVariable int teacherId) {
return courseTestService.getTestsByTeacherId(teacherId);
}

/**
* 学生查询一个课程的全部测试,需要返回测试成绩
*
* @param courseId
* @param userId
* @return
*/
@GetMapping("/testGet/course")
ResultVO<List<CourseTestVO>> getTestsByCourseId(@RequestParam int courseId, @RequestParam int userId) {
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 * @param replyDTO
* @return
*/
@PostMapping("/reply/create")
public ResultVO<ReplyVO> createReply(@RequestBody ReplyDTO replyDTO) {
return postService.createReply(replyDTO);
}

/**
* 查询一个帖子的全部回复,
* 判断是否需要清零新回复数并操作
*
* @param postId
* @param pageNo
* @return
*/
@GetMapping("/search/post/{pageNo}/{number}")
public PageInfo<ReplyVO> searchReplies(@RequestParam int postId, @PathVariable int pageNo, @PathVariable int number, @RequestParam(required = false, defaultValue = "") Integer userId) {
return postService.searchReplies(postId, pageNo, number, userId);
}

/**
* 创建一个回帖的回复
*
* @param replyDTO
* @return
*/
@PostMapping("/reply_reply/create")
public ResultVO<ReplyVO> createReply2Reply(@RequestBody ReplyDTO replyDTO) {
return postService.createReply2Reply(replyDTO);
}

/**
* 查询一个回复的回复
* 传入userId
* 判断是否需要清零新回复数并操作
*
* @param repliedId
* @param pageNo
* @return
*/
@GetMapping("/search/reply/{pageNo}/{number}")
public PageInfo<ReplyVO> searchReply2Reply(@RequestParam int repliedId, @PathVariable int pageNo, @PathVariable int number, @RequestParam(required = false, defaultValue = "") Integer userId) {
return postService.searchReply2Reply(repliedId, pageNo, number, userId);
}

/**
* 查询一个用户的全部帖子,返回帖子信息以及每个帖子有哪些新回复
* 不安全
*
* @param userId
* @return
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
}

/**
* 教师通过课程Id查找该课程的全部题目
* @param courseId
* @return
*/
@GetMapping("/questionGet/course/{courseId}")
ResultVO<List<CourseQuestionVO>> getQuestionsByCourseId(@PathVariable int courseId) {
return courseTestService.getQuestionsByCourseId(courseId);
}

/**
* 学生查询测试的题目,
* 若已做,则返回每题成绩,答案,解析
* 若未做,则仅返回题目
* @param testId
* @param userId
* @return
*/
@GetMapping("/questionGet/test")
ResultVO<List<CourseQuestionVO>> getQuestionsByTestId(@RequestParam int testId, @RequestParam int userId) {
return courseTestService.getQuestionsByTestId(testId, userId);
}


/**
* 老师查询测试的题目
* 返回每题的全部信息
* @param testId
* @return
*/
@GetMapping("/questionGet/test/{testId}")
ResultVO<List<CourseQuestionVO>> getQuestionsByTestId(@PathVariable int testId) {
return courseTestService.getQuestionsByTestId(testId);
}

/**
* 教师为一门测试添加题目
* @param courseTestQuestionAddDTO
* @return
*/
@PostMapping("/testAddQuestion")
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43


@RestController
@RequestMapping("/vip")
public class VipController {

@Autowired
VipService vipService;

/**
* 用户查看各种vip的价格
* @return
*/
@ResponseBody
@GetMapping("/price")
public ResultVO<List<VipInfoVO>> getVipPriceInfo(){
return vipService.getVipPriceInfo();
}

/**
* 用户购买vip
* @param vipChargeDTO
* @return
*/
@PostMapping("/get")
public ResultVO<VipChargeVO> chargeVip(@RequestBody VipChargeDTO vipChargeDTO){
return vipService.getVip(vipChargeDTO);
}
}
package cn.seecoder.courselearning.controller.user;



@RestController
@RequestMapping("/user")
public class UserController {
@Resource
private UserService userService;

@PostMapping("/register")
public ResultVO<UserVO> register(@RequestBody UserVO user){
return userService.userRegister(user);
}


项目链接:
https://javayms.github.io?id=091122542008200rz
https://javayms.pages.dev?id=091122542008200rz