基于javaweb的SpringBoot校园二手交易平台二手市场(java+springboot+maven+mysql+freemarker)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

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

功能说明

001923112309

011923112309

021923112309

041923112309

051923112309

061923112309

581923102309

591923102309

基于javaweb的SpringBoot校园二手交易平台二手市场(java+springboot+maven+mysql+freemarker)

前台学生:
http://localhost:8088/home
student1 123456
student2 123456
student3 123456
功能:查看商品、求购、发布宝贝、评价等

后台管理员:
http://localhost:8088
admin 123456
功能:系统设置、物品及分类管理、学生管理、评论管理、新闻管理等

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
 * 商品发布表单提交
* @param goods
* @return
*/
@RequestMapping(value="/publish",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> publish(Goods goods){
CodeMsg validate = ValidateEntityUtil.validate(goods);
if(validate.getCode() != CodeMsg.SUCCESS.getCode()){
return Result.error(validate);
}
if(goods.getGoodsCategory() == null || goods.getGoodsCategory().getId() == null || goods.getGoodsCategory().getId().longValue() == -1){
return Result.error(CodeMsg.HOME_STUDENT_PUBLISH_CATEGORY_EMPTY);
}
Student loginedStudent = (Student)SessionUtil.get(SessionConstant.SESSION_STUDENT_LOGIN_KEY);
goods.setStudent(loginedStudent);
if(goodsService.save(goods) == null){
return Result.error(CodeMsg.HOME_STUDENT_PUBLISH_ERROR);
}
return Result.success(true);
}

/**
* 物品编辑页面
* @param id
* @param model
* @return
*/
@RequestMapping(value="/edit_goods",method=RequestMethod.GET)
public String publish(@RequestParam(name="id",required=true)Long id,Model model){
Student loginedStudent = (Student)SessionUtil.get(SessionConstant.SESSION_STUDENT_LOGIN_KEY);
Goods goods = goodsService.find(id, loginedStudent.getId());
if(goods == null){
model.addAttribute("msg", "物品不存在!");
return "error/runtime_error";
}
model.addAttribute("goods", goods);
return "home/student/edit_goods";
}

/**
* 物品编辑表单提交
* @param goods
* @return
*/
@RequestMapping(value="/edit_goods",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> editGoods(Goods goods){
CodeMsg validate = ValidateEntityUtil.validate(goods);
if(validate.getCode() != CodeMsg.SUCCESS.getCode()){
return Result.error(validate);
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

/**
* 后台新闻公告管理控制器
*
*/
@RequestMapping("/admin/news")
@Controller
public class NewsController {

@Autowired
private NewsService newsService;
@Autowired
private OperaterLogService operaterLogService;
/**
* 新闻公告列表页面
* @param model
* @param user
* @param pageBean
* @return
*/
@RequestMapping(value="/list")
public String list(Model model,News news,PageBean<News> pageBean){
model.addAttribute("title", "新闻公告列表");
model.addAttribute("newsTitle", news.getTitle());
model.addAttribute("pageBean", newsService.findList(pageBean,news));
return "admin/news/list";
}

/**
* 新增新闻公告页面
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
return "admin/news/add";
}

/**
* 新闻公告添加表单提交处理
* @param news
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> add(News news){
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
public String list(Model model,User user,PageBean<User> pageBean){
model.addAttribute("title", "用户列表");
model.addAttribute("username", user.getUsername());
model.addAttribute("pageBean", userService.findList(user, pageBean));
return "admin/user/list";
}

/**
* 新增用户页面
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
model.addAttribute("roles", roleService.findAll());
return "admin/user/add";
}

/**
* 用户添加表单提交处理
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Result<Boolean> add(User user){
//用统一验证实体方法验证是否合法
CodeMsg validate = ValidateEntityUtil.validate(user);
if(validate.getCode() != CodeMsg.SUCCESS.getCode()){
return Result.error(validate);
}
if(user.getRole() == null || user.getRole().getId() == null){
return Result.error(CodeMsg.ADMIN_USER_ROLE_EMPTY);
}
//判断用户名是否存在
if(userService.isExistUsername(user.getUsername(), 0l)){
return Result.error(CodeMsg.ADMIN_USERNAME_EXIST);
}
//到这说明一切符合条件,进行数据库新增
if(userService.save(user) == null){
return Result.error(CodeMsg.ADMIN_USE_ADD_ERROR);
}
operaterLogService.add("添加用户,用户名:" + user.getUsername());
return Result.success(true);
}
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

/**
* 日志管理列表
*
* @param model
* @param operaterLog
* @param pageBean
* @return
*/
@RequestMapping(value = "/operator_log_list")
public String operatorLogList(Model model, OperaterLog operaterLog, PageBean<OperaterLog> pageBean) {
model.addAttribute("pageBean", operaterLogService.findList(operaterLog, pageBean));
model.addAttribute("operator", operaterLog.getOperator());
model.addAttribute("title", "日志列表");
return "admin/system/operator_log_list";
}

/**
* 删除操作日志,可删除多个
*
* @param ids
* @return
*/
@RequestMapping(value = "/delete_operator_log", method = RequestMethod.POST)
@ResponseBody
public Result<Boolean> delete(String ids) {
if (!StringUtils.isEmpty(ids)) {
String[] splitIds = ids.split(",");
for (String id : splitIds) {
operaterLogService.delete(Long.valueOf(id));
}
}
return Result.success(true);
}

/**
* 清空整个日志
*
* @return
*/
@RequestMapping(value = "/delete_all_operator_log", method = RequestMethod.POST)
@ResponseBody
public Result<Boolean> deleteAll() {
operaterLogService.deleteAll();
return Result.success(true);
}
}


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
54
    loginedUser.setHeadPic(user.getHeadPic());
//首先保存到数据库
userService.save(loginedUser);
//更新session里的值
SessionUtil.set(SessionConstant.SESSION_USER_LOGIN_KEY, loginedUser);
return "redirect:update_userinfo";
}

/**
* 修改密码页面
*
* @return
*/
@RequestMapping(value = "/update_pwd", method = RequestMethod.GET)
public String updatePwd() {
return "admin/system/update_pwd";
}

/**
* 修改密码表单提交
*
* @param oldPwd
* @param newPwd
* @return
*/
@RequestMapping(value = "/update_pwd", method = RequestMethod.POST)
@ResponseBody
public Result<Boolean> updatePwd(@RequestParam(name = "oldPwd", required = true) String oldPwd,
@RequestParam(name = "newPwd", required = true) String newPwd
) {
User loginedUser = SessionUtil.getLoginedUser();
if (!loginedUser.getPassword().equals(oldPwd)) {
return Result.error(CodeMsg.ADMIN_USER_UPDATE_PWD_ERROR);
}
if (StringUtils.isEmpty(newPwd)) {
return Result.error(CodeMsg.ADMIN_USER_UPDATE_PWD_EMPTY);
}
loginedUser.setPassword(newPwd);
//保存数据库
userService.save(loginedUser);
//更新session
SessionUtil.set(SessionConstant.SESSION_USER_LOGIN_KEY, loginedUser);
return Result.success(true);
}

/**
* 日志管理列表
*
* @param model
* @param operaterLog
* @param pageBean
* @return
*/
@RequestMapping(value = "/operator_log_list")


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