基于javaweb的SSM+Maven在线化妆品商城系统(java+ssm+jsp+js+bootstrap+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

050023152402

060023152402

070023152402

080023152402

090023152402

100023152402

基于javaweb的SSM+Maven在线化妆品商城系统(java+ssm+jsp+js+bootstrap+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_hzp_site/ 登录  注:Tomcat中配置项目路径必须为ssm_hzp_site 用户账号/密码: 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
    return "admin/listPropertyValue";
}

@RequestMapping("/addPropertyValueView")
public String addPropertyValueView(Model model ,Integer product_id,Integer category_id) {
List<PropertyValue> propertyValues = propertyValueService.findByProductId(product_id);
model.addAttribute("propertiesValue",propertyValues);
List<Property> properties = propertyService.findAll(category_id);
model.addAttribute("properties",properties);
Product product = productService.get(product_id);
model.addAttribute("product",product);
return "admin/addPropertyValueView";
}

@RequestMapping("/addPropertyValue")
public String add(PropertyValue propertyValue ){
int product_id = propertyValue.getProduct_id();
int category_id = productService.get(product_id).getCategory_id();
propertyValueService.add(propertyValue);
return "redirect:listPropertyValue?product_id=" + product_id + "&category_id=" + category_id;
}

@RequestMapping("/deletePropertyValue")
public String delete(Integer id) {
int product_id = propertyValueService.get(id).getProduct_id();
int category_id = productService.get(product_id).getCategory_id();
propertyValueService.delete(id);
return "redirect:listPropertyValue?product_id=" + product_id + "&category_id=" + category_id;
}

@RequestMapping("/editPropertyValue")
public String edit(Integer id ,Model model) {
PropertyValue propertyValue = propertyValueService.get(id);
model.addAttribute("propertyValue",propertyValue);
Product product = productService.get(propertyValue.getProperty_id());
model.addAttribute("product",product);
return "admin/editPropertyValue";
}

@RequestMapping("/updatePropertyValue")
public String update(PropertyValue propertyValue) {
Integer product_id = propertyValue.getProduct_id();
Integer category_id = productService.get(product_id).getCategory_id();
propertyValueService.update(propertyValue);
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


}
package com.smzy.controller;


@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")
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
    order.setStatus(OrderService.waitDelivery);
order.setPay_date(new Date());
orderService.update(order);
model.addAttribute("order", order);
return "payed";
}


//---------------------------------------------加入购物车------------------------------------------------
@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")
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
public class OtherInterceptor extends HandlerInterceptorAdapter {


@Autowired
private OrderItemService orderItemService;


@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
return true;
}

@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
int cartTotalItemNumber = 0;
if(null != user) {
List<OrderItem> ois = orderItemService.findForCart(user.getId());
for(OrderItem oi : ois) {
cartTotalItemNumber += oi.getNumber();
}
}
session.setAttribute("cartTotalItemNumber",cartTotalItemNumber);
}

@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
}
}
package com.smzy.controller;



@Controller
public class AdminController {

@Autowired
private AdminService adminService;

@RequestMapping("/aLogin")
public String login(Model model, @RequestParam("name") String name,
@RequestParam("password") String password,
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
        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);
review.setCreateDate(new Date());
review.setUser_id(user.getId());
reviewService.add(review);
return "redirect:review?order_id=" + order_id + "&showonly=true";
}
}
package com.smzy.controller;


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