基于javaweb的SSM在线蛋糕商城系统(java+ssm+jsp+bootstrap+jquery+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

420023552402

440023552402

450023552402

460023552402

470023552402

基于javaweb的SSM在线蛋糕商城系统(java+ssm+jsp+bootstrap+jquery+mysql)

项目介绍

本项目为前后台项目,前台为普通用户登录,后台为管理员登录;

用户角色包含以下功能: 查看所有蛋糕,用户登录和注册,查看蛋糕详情,提交订单,查看我的订单,查看我的购物车,确认收货,评论商品等功能。

管理员角色包含以下功能: 管理员登录,蛋糕分类管理,蛋糕管理,用户管理,订单管理等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;  5.数据库:MySql 5.7版本; 6.是否Maven项目:是;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+CSS+JavaScript+jQuery+Bootstrap

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中db.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入http://localhost:8080/ssm_dangao_shop/ 登录  注:Tomcat中配置项目路径必须为ssm_dangao_shop 用户账号/密码: user/123456 管理员账号/密码:admin/admin

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

@Controller
public class PageController {

@RequestMapping("/loginPage")
public String loginPage() {
return "loginPage";
}

@RequestMapping("/registerPage")
public String registerPage() {
return "registerPage";
}

@RequestMapping("/registerSuccess")
public String registerSuccess() {
return "registerSuccess";
}

@RequestMapping("/payPage")
public String payPage() {
return "payPage";
}

@RequestMapping("/admin")
public String admin() {
return "admin/adminLogin";
}

@RequestMapping("/adminLogin")
public String adminLogin() {
return "admin/adminLogin";
}

@RequestMapping("/back")
public String back() {
return "back";
}

@RequestMapping("/knowledge")
public String knowledge() {
return "knowledge";
}

@RequestMapping("/advert")
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

@RequestMapping("/admin")
public String admin() {
return "admin/adminLogin";
}

@RequestMapping("/adminLogin")
public String adminLogin() {
return "admin/adminLogin";
}

@RequestMapping("/back")
public String back() {
return "back";
}

@RequestMapping("/knowledge")
public String knowledge() {
return "knowledge";
}

@RequestMapping("/advert")
public String advert() {
return "advert";
}

@RequestMapping("/touch")
public String touch() {
return "touch";
}
}
package com.smzy.controller;



@Controller
@RequestMapping("/admin")
public class OrderController {
@Autowired
private OrderService orderService;

@RequestMapping("/listOrder")
public String findAll(Model model) {
List<Order> orders = orderService.findAll();
model.addAttribute("orders",orders);
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
}


//---------------------------------------------加入购物车------------------------------------------------
@RequestMapping("addCart")
@ResponseBody
public String addCart(int product_id,int num,Model model,HttpSession session) {
Product p = productService.get(product_id);
User user = (User) session.getAttribute("user");
boolean found = false;
List<OrderItem> ois = orderItemService.findByUserId(user.getId());
for(OrderItem oi :ois) {
if(oi.getProduct().getId().intValue() == p.getId().intValue()) {
oi.setNumber(oi.getNumber() + num);
orderItemService.update(oi);
found = true;
break;
}
}
if(!found) {
OrderItem oi = new OrderItem();
oi.setUser_id(user.getId());
oi.setNumber(num);
oi.setProduct_id(product_id);
orderItemService.add(oi);
}
return "success";
}

@RequestMapping("/cart")
public String cart(Model model, HttpSession session) {
User user = (User)session.getAttribute("user");
List<OrderItem> orderItems = orderItemService.findForCart(user.getId());
model.addAttribute("orderItems",orderItems);
return "cart";
}

@RequestMapping("/checkLogin")
@ResponseBody
public String checkLogin(HttpSession session) {
User user = (User)session.getAttribute("user");
if(null != user)
return "success";
return "fail";
}

@RequestMapping("/changeOrderItem")
@ResponseBody
public String changeOrderItem(Model model,HttpSession session,int product_id,int number) {
User user = (User)session.getAttribute("user");
if(null == user)
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
    @RequestMapping("/deleteProperty")
public String delete(Integer id) {
Integer category_id = propertyService.get(id).getCategory_id();
propertyService.delete(id);
return "redirect:listProperty?category_id=" + category_id;
}

@RequestMapping("/editProperty")
public String edit(Integer id,Model model) {
Property property = propertyService.get(id);
model.addAttribute("property",property);
Category category = categoryService.get(property.getCategory_id());
model.addAttribute("category",category);
return "admin/editProperty";
}

@RequestMapping("/updateProperty")
public String update(Property property) {
propertyService.update(property);
return "redirect:listProperty?category_id=" + property.getCategory_id();
}
}
package com.smzy.interceptor;



public class LoginInterceptor extends HandlerInterceptorAdapter {
public boolean preHandle(HttpServletRequest request , HttpServletResponse response ,Object handler) throws Exception {
HttpSession session = request.getSession();
String[] noNeedAuthPage = new String[] {
"/ssm_dangao_shop/home",
"/ssm_dangao_shop/searchProduct",
"/ssm_dangao_shop/sortProduct",
"/ssm_dangao_shop/showProduct",
"/ssm_dangao_shop/login",
"/ssm_dangao_shop/loginPage",
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
    orderItemService.delete(orderItemId);
return "success";
}

@RequestMapping("bought")
public String bought(Model model,HttpSession session) {
User user =(User) session.getAttribute("user");
List<Order> orders = orderService.list(user.getId(),OrderService.delete);
orderItemService.fill(orders);
model.addAttribute("orders",orders);
return "bought";
}

@RequestMapping("confirmPay")
public String confirmPay(Model model,Integer order_id) {
Order order = orderService.get(order_id);
orderItemService.fill(order);
model.addAttribute("order",order);
return "confirmPay";
}

@RequestMapping("/orderConfirmed")
public String orderConfirmed(Model model,Integer order_id) {
Order order = orderService.get(order_id);
order.setStatus(OrderService.waitReview);
order.setConfirm_date(new Date());
orderService.update(order);
return "orderConfirmedPage";
}

@RequestMapping("deleteOrder")
public String deleteOrder(Model model,Integer order_id) {
Order order = orderService.get(order_id);
order.setStatus(OrderService.delete);
orderService.update(order);
return "success";
}

@RequestMapping("review")
public String review(Model model,Integer order_id) {
Order order = orderService.get(order_id);
orderItemService.fill(order);
Product product = order.getOrderItems().get(0).getProduct();
List<Review> reviews = reviewService.findByProductId(product.getId());
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
    order.setStatus(OrderService.waitReview);
order.setConfirm_date(new Date());
orderService.update(order);
return "orderConfirmedPage";
}

@RequestMapping("deleteOrder")
public String deleteOrder(Model model,Integer order_id) {
Order order = orderService.get(order_id);
order.setStatus(OrderService.delete);
orderService.update(order);
return "success";
}

@RequestMapping("review")
public String review(Model model,Integer order_id) {
Order order = orderService.get(order_id);
orderItemService.fill(order);
Product product = order.getOrderItems().get(0).getProduct();
List<Review> reviews = reviewService.findByProductId(product.getId());
productService.setReviewCount(product);
model.addAttribute("product",product);
model.addAttribute("order",order);
model.addAttribute("reviews",reviews);
return "reviewPage";
}


@RequestMapping("doReview")
public String deReview(Model model,HttpSession session,
@RequestParam("order_id") Integer order_id,
@RequestParam("product_id") Integer product_id,
String content) {
Order order = orderService.get(order_id);
order.setStatus(OrderService.finish);
orderService.update(order);

User user = (User) session.getAttribute("user");
Review review = new Review();
review.setContent(content);
review.setProduct_id(product_id);


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