基于javaweb的SpringBoot游戏资讯信息管理系统(java+springboot+vue+mybatis+maven+mysql)

运行环境

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

开发工具

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

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

适用

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

功能说明

460123022402

470123022402

480123022402

490123022402

500123022402

510123022402

530123022402

432024333108

基于javaweb的SpringBoot游戏资讯信息管理系统(java+springboot+vue+mybatis+maven+mysql)

1
2
3
4
5
6
7
管理员:
admin 123456

用户
user1 123456
user2 123456
user3 123456

一、项目运行 环境配置:

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
46
47
48
49
50
51
52
53
    GameInfo gameInfo = gameInfoService.getById(userGameLikeTO.getGameId());
if (userGameLike != null){
//如果已经收藏,则不允许重复收藏
resultVo.setStatus(-1);
map.put("msg", "已经设为喜爱,不允许重复设置");
resultVo.setDataValue(map);
return resultVo;
} else {
//添加记录
UserGameLike u = new UserGameLike();
u.setUserId(userId);
u.setGameId(gameId);
UserGameLike ug = gameInfoService.saveGameLike(u);
if (ug != null){
//该游戏收藏数要加1
gameInfo.setLikeCounts(gameInfo.getLikeCounts() + 1);
gameInfoService.saveOrUpdateGameInfo(gameInfo);
resultVo.setStatus(1);
return resultVo;
}
}
resultVo.setStatus(-1);
return resultVo;
}

@PostMapping("/deleteGameLike")
@LoginRequired
public ResultVo deleteGameLike(@RequestBody UserGameLikeTo userGameLikeTO){
ResultVo resultVo = new ResultVo();
int result = gameInfoService.deleteGameLikeByUserIdAndGameId(userGameLikeTO.getUserId(),
userGameLikeTO.getGameId());
GameInfo gameInfo = gameInfoService.getById(userGameLikeTO.getGameId());
//删除收藏关系后,该游戏收藏数减1
gameInfo.setLikeCounts(gameInfo.getLikeCounts() - 1);
gameInfoService.saveOrUpdateGameInfo(gameInfo);
if (result > 0){
resultVo.setStatus(1);
return resultVo;
}
resultVo.setStatus(-1);
return resultVo;
}

@PostMapping("/ifUserGameLike")
@LoginRequired
public ResultVo ifUserGameLike(@RequestBody UserGameLikeTo userGameLikeTO){
ResultVo resultVo = new ResultVo();
UserGameLike userGameLike = gameInfoService.findGameLikeByUserIdAndGameId(userGameLikeTO.getUserId(),
userGameLikeTO.getGameId());
resultVo.setStatus(1);
if (userGameLike != null){
return resultVo;
}
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
                //保存信息到session中
session.setAttribute("username", u.getUsername());
session.setAttribute("userId", u.getId());
session.setAttribute("isAdmin", u.isAdmin());
return vo;
}
}
Map<String, Object> map = new HashMap<>();
map.put("msg", "用户名或密码错误");
userTokenVo.setDataValue(map);
userTokenVo.setStatus(-1);
return userTokenVo;
}

@PostMapping("/userRegister")
@PassToken
public UserTokenVo userRegister(@RequestBody UserLoginTo userLoginTo) {
return loginService.userRegister(userLoginTo.getUsername(), userLoginTo.getPassword());
}

@GetMapping("/logout")
@PassToken
public ResultVo logout(@RequestParam("username") String username, HttpServletRequest request) {
HttpSession session = request.getSession();
session.removeAttribute("username");
session.removeAttribute("userId");
return loginService.logout(username);
}
}
package com.tidalcoast.application.Interceptor;



/**
* jwt拦截器
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
            return gameInfoVo;
}
gameInfoVo.setStatus(-1);
return gameInfoVo;
}

@GetMapping("/getGameInfoLikedByUserId")
@LoginRequired
public List<GameInfo> getGameInfoLikedByUserId(Long userId){
return gameInfoService.getAllGameInfoLikeByUserId(userId);
}

@GetMapping("/getGameInfoPage")
@LoginRequired
public Page<GameInfo> getGameInfoPage(int index, int size){
Pageable page = PageRequest.of(index, size);
return gameInfoService.findPage(page);
}

@GetMapping("/calculateGamesLike")
@LoginRequired
public List<GameInfo> calculateGamesLike(Long userId){
List<GameInfo> resultList = new ArrayList<>();
List<Long> ids = userCFUtil.calculateGameLike(userId);
if (ids == null) {
return resultList;
}
for (Long id : ids) {
GameInfo g = gameInfoService.getById(id);
resultList.add(g);
}
return resultList;
}
}
package com.tidalcoast.application.controller;


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
    return resultVo;
}

@PostMapping("/insertNewsInfo")
@LoginRequired
public ResultVo insertNewsInfo(@RequestBody NewsInfoTo newsInfoTo){
ResultVo resultVo = new ResultVo();
NewsInfo newsInfo = new NewsInfo();
newsInfo.setLikeCounts(0L);
newsInfo.setContent(newsInfoTo.getContent());
newsInfo.setBanner(newsInfoTo.getBanner());
newsInfo.setImg(newsInfoTo.getImg());
newsInfo.setUpdateTime(new Date());
newsInfo.setTitle(newsInfoTo.getTitle());
newsInfo.setType(newsInfoTo.getType());
newsInfo.setAuthor(newsInfo.getAuthor());
newsInfo.setClickCounts(0L);
NewsInfo n = newsInfoService.saveOrUpdateNewsInfo(newsInfo);
if (n != null){
resultVo.setStatus(1);
return resultVo;
}
resultVo.setStatus(-1);
return resultVo;
}

@GetMapping("/editNewsInfoType")
@LoginRequired
public ResultVo editNewsInfo(Long newsId, int typeId){
ResultVo resultVo = new ResultVo();
NewsInfo newsInfo = newsInfoService.findById(newsId);
newsInfo.setType(typeId);
NewsInfo n = newsInfoService.saveOrUpdateNewsInfo(newsInfo);
if (n != null){
resultVo.setStatus(1);
return resultVo;
}
resultVo.setStatus(-1);
return resultVo;
}

@GetMapping("/delGame")
@LoginRequired
public ResultVo delGame(Long id){
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
53

@PostMapping("/insertGameType")
@LoginRequired
public ResultVo insertGameType(@RequestBody GameTypeTo gameTypeTo){
ResultVo resultVo = new ResultVo();
GameType gameType = new GameType();
gameType.setName(gameTypeTo.getName());
GameType gt = gameTypeService.saveOrUpdate(gameType);
if (gt != null){
resultVo.setStatus(1);
return resultVo;
}
resultVo.setStatus(-1);
return resultVo;
}

@PostMapping("/editGameType")
@LoginRequired
public ResultVo editGameType(@RequestBody GameTypeTo gameTypeTo){
ResultVo resultVo = new ResultVo();
GameType gameType = new GameType();
gameType.setName(gameTypeTo.getName());
gameType.setId(gameTypeTo.getId());
GameType gt = gameTypeService.saveOrUpdate(gameType);
if (gt != null){
resultVo.setStatus(1);
return resultVo;
}
resultVo.setStatus(-1);
return resultVo;
}

@GetMapping("/delNewsType")
@LoginRequired
public ResultVo delNewsType(Long id){
ResultVo resultVo = new ResultVo();
newsInfoService.deleteNewsTypeById(id);
resultVo.setStatus(1);
return resultVo;
}

@PostMapping("/insertNewsInfoType")
@LoginRequired
public ResultVo insertNewsInfoType(@RequestBody NewsInfoTypeTo newsInfoTypeTo){
ResultVo resultVo = new ResultVo();
NewsType newsType = new NewsType();
newsType.setName(newsInfoTypeTo.getName());
NewsType nt = newsInfoService.saveOrUpdateNewsInfoType(newsType);
if (nt != null){
resultVo.setStatus(1);
return resultVo;
}
resultVo.setStatus(-1);


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