基于javaweb的SpringBoot嘟嘟二手书商城系统(java+html+springboot+maven+mysql+ajax)

运行环境

Java≥8、MySQL≥5.7

开发工具

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

适用

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

功能说明

130023212402

140023212402

160023212402

170023212402

180023212402

基于javaweb的SpringBoot嘟嘟二手书商城系统(java+html+springboot+maven+mysql+ajax)

管理员
admin 123456

普通用户
张三 123456
李四 123456
王五 123456

一、项目简述

功能:
主页显示商品; 所有二手书商品展示,可进行商品搜索; 点击商品进入商品详情页,具有立即购买和加入购物车功能,可增减购买商品数量亦可手动输入,热销商品展示。 立即购买进入确认订单页面,可选择已经添加的地址,亦可新增地址。 可选择购买哪些商品,可删除不需要的商品。 点击结算进入确认订单页面,确认后提交订单。

后台管理:(修改密码等),商品管理(商品批量添加、上下架等),订单管理。

二、项目运行

环境配置:

Jdk1.8 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

项目技术:

JSP +Springboot+ SpringMVC + MyBatis + ThymeLeaf + FTP+ JavaScript + JQuery + Ajax + 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

@RestController
public class CollectionController {
@Autowired
CollectionService collectionService;

/**
* 取消收藏
*/
@DeleteMapping("cancelstart")
public ResultResp cancelStart(@RequestParam String userName,
@RequestParam int bookId){
return collectionService.cancel(userName,bookId);
}

/**
* 收藏图书
*/
@GetMapping("start")
public ResultResp start(@RequestParam String userName,
@RequestParam int bookId){
return collectionService.start(userName,bookId);
}
/**
* 收藏图书列表
*/
@GetMapping("startlist")
public ResultResp startList(@RequestParam String userName,
@RequestParam(required = false, defaultValue = "1") int pageIndex,
@RequestParam(required = false, defaultValue = "8") int pageSize){
return collectionService.startList(userName,pageIndex,pageSize);
}
}
package com.hq.secondhand_book.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
     * 收藏图书
*/
@GetMapping("start")
public ResultResp start(@RequestParam String userName,
@RequestParam int bookId){
return collectionService.start(userName,bookId);
}
/**
* 收藏图书列表
*/
@GetMapping("startlist")
public ResultResp startList(@RequestParam String userName,
@RequestParam(required = false, defaultValue = "1") int pageIndex,
@RequestParam(required = false, defaultValue = "8") int pageSize){
return collectionService.startList(userName,pageIndex,pageSize);
}
}
package com.hq.secondhand_book.controller;


@RestController
public class ReceiveAdressController {
@Autowired
ReceiveAdressService receiveAdressService;

/**
* 用户的收货地址列表
* @param userName
* @return
*/
@GetMapping("/getreceiveadress")
public ResultResp getReceiveAdress(String userName){
return receiveAdressService.getRececiveAdress(userName);
}

/**
* 添加收货地址
* @return
*/
@PostMapping("/addreceiveadress")
public ResultResp addReceiveAdress(@RequestBody ReceiveAdressDto dto){
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
     * @param bookId
* @return
*/
@GetMapping("/addbook")
public ResultResp addBook(@RequestParam int bookId){
return bookService.addBook(bookId);
}
}
package com.hq.secondhand_book.util.aop;



/**
* 记录接口信息
*/
@Aspect
@Component
public class HttpAspect {

protected final Logger logger = LoggerFactory.getLogger(getClass());

@Pointcut("execution(public * com.hq.secondhand_book.controller.*.*(..))")
public void log() {
}

@Before("log()")
public void doBefore(JoinPoint joinPoint) {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest();
logger.info("url={}", request.getRequestURL());
logger.info("method={}", request.getMethod());
logger.info("class_method={}", joinPoint.getSignature().getDeclaringTypeName() + "."
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
     * 收藏图书列表
*/
@GetMapping("startlist")
public ResultResp startList(@RequestParam String userName,
@RequestParam(required = false, defaultValue = "1") int pageIndex,
@RequestParam(required = false, defaultValue = "8") int pageSize){
return collectionService.startList(userName,pageIndex,pageSize);
}
}
package com.hq.secondhand_book.controller;


@RestController
public class ReceiveAdressController {
@Autowired
ReceiveAdressService receiveAdressService;

/**
* 用户的收货地址列表
* @param userName
* @return
*/
@GetMapping("/getreceiveadress")
public ResultResp getReceiveAdress(String userName){
return receiveAdressService.getRececiveAdress(userName);
}

/**
* 添加收货地址
* @return
*/
@PostMapping("/addreceiveadress")
public ResultResp addReceiveAdress(@RequestBody ReceiveAdressDto dto){
return receiveAdressService.addRececiveAdress(dto);
}

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
                                  @RequestParam int bookId){
return collectionService.cancel(userName,bookId);
}

/**
* 收藏图书
*/
@GetMapping("start")
public ResultResp start(@RequestParam String userName,
@RequestParam int bookId){
return collectionService.start(userName,bookId);
}
/**
* 收藏图书列表
*/
@GetMapping("startlist")
public ResultResp startList(@RequestParam String userName,
@RequestParam(required = false, defaultValue = "1") int pageIndex,
@RequestParam(required = false, defaultValue = "8") int pageSize){
return collectionService.startList(userName,pageIndex,pageSize);
}
}
package com.hq.secondhand_book.controller;


@RestController
public class ReceiveAdressController {
@Autowired
ReceiveAdressService receiveAdressService;

/**
* 用户的收货地址列表
* @param userName
* @return
*/
@GetMapping("/getreceiveadress")
public ResultResp getReceiveAdress(String userName){
return receiveAdressService.getRececiveAdress(userName);
}

/**
* 添加收货地址
* @return
*/
@PostMapping("/addreceiveadress")
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



public abstract class BaseController {

protected final Logger logger = LoggerFactory.getLogger(getClass());

@Autowired
public WebApplicationContext webApplicationContext;

@Autowired
protected HttpServletRequest httpServletRequest;

@Autowired
protected HttpServletResponse httpServletResponse;

public HttpSession getHttpSession() {
return getHttpSession(true);
}

public HttpSession getHttpSession(boolean request) {
return httpServletRequest.getSession(request);
}

}
package com.hq.secondhand_book.controller;




/**


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