一、简介
这是一个基于SSM和JSP开发的网上购物商城系统
二、实现技术
- 前端:JSP
- 后端:spring、springMVC、MyBatis
- 组件库:bootstrap
- 数据库:MySQL8.0
- 运行环境:JDK8、IntelliJ IDEA 、Tomcat 8.5.73
三、系统功能模块
四、数据库表设计
该系统数据库有8张表,分别为admins(管理员表)、carts(购物车表)、goods(商品表)、items(订单项表)、orders(订单表)、tops(商品推荐表)、types(商品类型表)、users(用户表)。
admins表设计
carts表设计![](https://i-blog.csdnimg.cn/blog_migrate/6cff994885bae4d04fa89584a3bc27c7.png)
goods表设计
items表设计
orders表设计
tops表设计
types表设计
users表设计
五、部分功能实现
1.加入购物车功能
Controller层
/**
* 加入购物车
* @return
*/
@PostMapping("/cartBuy")
public @ResponseBody boolean cartBuy(int goodId, HttpSession session){
Users user = (Users) session.getAttribute("user");
return cartService.save(goodId, user.getId());
}
Service层
/**
* 添加购物车
* @return
*/
public boolean save(int goodId, int userId) {
Carts cart = cartDao.selectByUserIdAndGoodId(userId, goodId);
if(Objects.nonNull(cart)) { // 如果存在记录 数量+1
return cartDao.updateAmonut(cart.getId(), 1);
}
cart = new Carts();
cart.setGoodId(goodId);
cart.setUserId(userId);
cart.setAmount(1); // 默认数量1
return cartDao.insert(cart);
}
2.查看订单
Controller层
/**
* 查看订单
* @return
*
*/
@GetMapping("/order")
public String order(HttpServletRequest request, HttpSession session,
@RequestParam(required=false, defaultValue="1")int page,
@RequestParam(required=false, defaultValue="6")int size) {
Users user = (Users) session.getAttribute("user");
request.setAttribute("orderList", orderService.getListByUserid(user.getId(), page, size));
request.setAttribute("pageTool", PageUtil.getPageTool(request, orderService.getCountByUserid(user.getId()), page, size));
return "/index/order.jsp";
}
Service层
/**
* 获取某用户全部订单
* @param userId
*/
public List<Orders> getListByUserid(int userId, int page, int size) {
return pack(orderDao.selectListByUserid(userId, size*(page-1), size));
}
Dao层
@Select("select * from orders where user_id=#{userId} order by id desc limit #{begin}, #{size}")
public List<Orders> selectListByUserid(@Param("userId")int userId, @Param("begin")int begin, @Param("size")int size);
六、部分功能介绍
七、运行界面展示
更多源码请联系作者qq1710270710