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

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

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

基于javaweb+mysql的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
        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,
                        HttpSession session2) {
        Admin admin = adminService.get(name, password);
        if (null == admin) {
            model.addAttribute("msg", "用户名或密码错误");
            return "admin/adminLogin";
        }
        session2.setAttribute("admin", admin);
        return "redirect:admin/listCategory";
    }

    @RequestMapping("/adminLogout")
    public String logout(HttpSession session2) {
        session2.removeAttribute("admin");
        return "redirect:admin";
    }
}
package com.smzy.controller;

    }
}
package com.smzy.controller;

@Controller
@RequestMapping("/admin")
public class PropertyValueController {

    @Autowired
    private PropertyValueService propertyValueService;

    @Autowired
    private PropertyService propertyService;

    @Autowired
    private ProductService productService;

    @RequestMapping("/listPropertyValue")
    public String findAll(Model model ,Integer product_id ,Integer category_id) {
        List<PropertyValue> propertyValues = propertyValueService.findByProductId(product_id);
        model.addAttribute("propertyValues",propertyValues);
        Product product = productService.get(product_id);
        model.addAttribute("product",product);
        List<Property> properties = propertyService.findAll(category_id);
        model.addAttribute("properties",properties);
        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);
        }
        userService.add(user);
        return "redirect:registerSuccess";
    }

    //----------------------------------------------立即购买-------------------------------------------------

    @RequestMapping("/buyOne")
    public String buyOne(Integer product_id, Integer number, HttpSession session) {
        Product product = productService.get(product_id);
        int orderItemId = 0;

        User user = (User) session.getAttribute("user");
        boolean found = false;
        List<OrderItem> orderItems = orderItemService.findByUserId(user.getId());
        for (OrderItem orderItem : orderItems) {
            if (orderItem.getProduct_id().intValue() == product.getId().intValue()) {
                orderItem.setNumber(orderItem.getNumber() + number);
                orderItemService.update(orderItem);
                orderItemId = orderItem.getId();
                break;
            }
        }

        if (!found) {
            OrderItem orderItem = new OrderItem();
            orderItem.setUser_id(user.getId());
            orderItem.setNumber(number);
            orderItem.setProduct_id(product_id);
            orderItemService.add(orderItem);
            orderItemId = orderItem.getId();
        }
        return "redirect:buy?orderItemId=" + orderItemId;
    }

    @RequestMapping("/buy")
    public String buy(Model model, String[] orderItemId, HttpSession session) {
        List<OrderItem> orderItems = new ArrayList<>();
        float total = 0;
        for (String strId : orderItemId) {
            int id = Integer.parseInt(strId);
            OrderItem orderItem = orderItemService.get(id);
            total += orderItem.getProduct().getPrice() * orderItem.getNumber();
            orderItems.add(orderItem);
        }
        session.setAttribute("orderItems", orderItems);
        model.addAttribute("total", total);
        return "buyPage";
    }

    @RequestMapping("/createOrder")
    public String createOrder(Model model, Order order, HttpSession session) {
        session2.removeAttribute("admin");
        return "redirect:admin";
    }
}
package com.smzy.controller;

@Controller
@RequestMapping("/admin")
public class UserController {
    @Autowired
    private UserService userService;

    @RequestMapping("/listUser")
    public String findAll(Model model) {
        List<User> users = userService.findAll();
        model.addAttribute("users",users);
        return "admin/listUser";
    }
    @RequestMapping("/editUser")
    public String edit(Model model ,Integer id) {
        User user = userService.get(id);
        model.addAttribute("user",user);
        return "admin/editUser";
    }

    @RequestMapping("/updateUser")
    public String update(Integer id,String password) {
        userService.updatePassword(id,password);
        return "redirect:listUser";
    }

}
package com.smzy.controller;

@Controller
public class PageController {

                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)
            return "fail";

        List<OrderItem> ois = orderItemService.findByUserId(user.getId());
        for(OrderItem oi : ois) {
            if(oi.getProduct().getId().intValue() == product_id) {
                oi.setNumber(number);
                orderItemService.update(oi);
                break;
            }
        }
    }
    @RequestMapping("/addProperty")
    public String add(Property property) {
        propertyService.add(property);
        return "redirect:listProperty?category_id=" + property.getCategory_id();
    }

    @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_hzp_site/home",
                "/ssm_hzp_site/searchProduct",
                "/ssm_hzp_site/sortProduct",
                "/ssm_hzp_site/showProduct",
                "/ssm_hzp_site/login",
                "/ssm_hzp_site/loginPage",

@Controller
@RequestMapping("/admin")
public class ProductController {

    @Autowired
    private ProductService productService;

    @Autowired
    private CategoryService categoryService;

    @Autowired
    private ProductImageService productImageService;

    @Autowired
    private PropertyValueService propertyValueService;

    @RequestMapping("/listProduct")
    public String findAll(Model model,Integer category_id) {
        List<Product> products = productService.findAll(category_id);
        model.addAttribute("products",products);
        Category category = categoryService.get(category_id);
        model.addAttribute("category",category);
        return "admin/listProduct";
    }

    @RequestMapping("/addProductView")
    public String addView(Model model,Integer category_id) {
        Category category = categoryService.get(category_id);
        model.addAttribute("category",category);
        return "admin/addProductView";
    }
    @RequestMapping("/addProduct")
    public String add(Product product) {
        productService.add(product);
        ProductImage productImage = new ProductImage();
        productImage.setProduct_id(product.getId());
        for(int i = 1;i <= 5 ;i++) {
            productImageService.add(productImage);
        }
        return "redirect:listProduct?category_id=" + product.getCategory_id();
                response.sendRedirect("/ssm_hzp_site/loginPage");
                return false;
            }
        }
        return true;
    }

    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
    }

    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        super.afterCompletion(request, response, handler, ex);
    }
}

package com.smzy.interceptor;

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());
/*    public static boolean deleteDir(File dir) {
        if(dir.isDirectory()){
            String[] children = dir.list();
            for(int i = 0 ;i < children.length;i++ ) {
                boolean success = deleteDir(new File(dir, children[i]));
                if(!success) {
                    return false;
                }
            }
        }
        return dir.delete();
    }*/
    @RequestMapping("/editProduct")
    public String edit(Integer id, Model model) {
        Product product = productService.get(id);
        model.addAttribute("product",product);
        Category category = categoryService.get(product.getCategory_id());
        model.addAttribute("category",category);
        return "admin/editProduct";
    }

    @RequestMapping("/updateProduct")
    public String update(Product product) {
        productService.update(product);
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }
}
package com.smzy.controller;

@Controller
@RequestMapping("/admin")
public class ProductImageController {

    @Autowired
    private ProductImageService productImageService;

    @Autowired
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,
                        HttpSession session2) {
        Admin admin = adminService.get(name, password);
        if (null == admin) {
            model.addAttribute("msg", "用户名或密码错误");
            return "admin/adminLogin";
        }
        session2.setAttribute("admin", admin);
        return "redirect:admin/listCategory";
    }

    @RequestMapping("/adminLogout")
    public String logout(HttpSession session2) {
        session2.removeAttribute("admin");
        return "redirect:admin";
    }
}
package com.smzy.controller;

    @RequestMapping("/listUser")
    public String findAll(Model model) {
        List<User> users = userService.findAll();
        model.addAttribute("users",users);
        return "admin/listUser";
    }
    @RequestMapping("/editUser")
    public String edit(Model model ,Integer id) {
        User user = userService.get(id);
        model.addAttribute("user",user);
        return "admin/editUser";
    }

    @RequestMapping("/updateUser")
    public String update(Integer id,String password) {
        userService.updatePassword(id,password);
        return "redirect:listUser";
    }

}
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")
                if(!success) {
                    return false;
                }
            }
        }
        return dir.delete();
    }*/
    @RequestMapping("/editProduct")
    public String edit(Integer id, Model model) {
        Product product = productService.get(id);
        model.addAttribute("product",product);
        Category category = categoryService.get(product.getCategory_id());
        model.addAttribute("category",category);
        return "admin/editProduct";
    }

    @RequestMapping("/updateProduct")
    public String update(Product product) {
        productService.update(product);
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }
}
package com.smzy.controller;

@Controller
@RequestMapping("/admin")
public class ProductImageController {

    @Autowired
    private ProductImageService productImageService;

    @Autowired
    private ProductService productService;

    @RequestMapping("/editProductImage")
        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);
        return "redirect:listPropertyValue?product_id=" + product_id + "&category_id=" + category_id;
    }
}
package com.smzy.controller;


    @RequestMapping("/changeOrderItem")
    @ResponseBody
    public String changeOrderItem(Model model,HttpSession session,int product_id,int number) {
        User user = (User)session.getAttribute("user");
        if(null == user)
            return "fail";

        List<OrderItem> ois = orderItemService.findByUserId(user.getId());
        for(OrderItem oi : ois) {
            if(oi.getProduct().getId().intValue() == product_id) {
                oi.setNumber(number);
                orderItemService.update(oi);
                break;
            }
        }
        return "success";
    }

    @RequestMapping("deleteOrderItem")
    @ResponseBody
    public String deleteOrderItem(Model model,HttpSession session,Integer orderItemId) {
        User user = (User) session.getAttribute("user");
        if(null == user)
            return "fail";
        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("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)
        deleteDir(new File(path));
        propertyValueService.deleteByProductId(id);
        int category_id = productService.get(id).getCategory_id();
        productService.delete(id);
        return "redirect:listProduct?category_id=" + category_id;
    }*/

/*    public static boolean deleteDir(File dir) {
        if(dir.isDirectory()){
            String[] children = dir.list();
            for(int i = 0 ;i < children.length;i++ ) {
                boolean success = deleteDir(new File(dir, children[i]));
                if(!success) {
                    return false;
                }
            }
        }
        return dir.delete();
    }*/
    @RequestMapping("/editProduct")
    public String edit(Integer id, Model model) {
        Product product = productService.get(id);
        model.addAttribute("product",product);
        Category category = categoryService.get(product.getCategory_id());
        model.addAttribute("category",category);
        return "admin/editProduct";
    }

    @RequestMapping("/updateProduct")
    public String update(Product product) {
        productService.update(product);
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }
}
package com.smzy.controller;

        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);
        return "redirect:listPropertyValue?product_id=" + product_id + "&category_id=" + category_id;
    }
}
package com.smzy.controller;

@Controller
@RequestMapping("/admin")
public class ProductController {

    @Autowired
    private ProductService productService;

    @Autowired
    private CategoryService categoryService;

    @Autowired
    private ProductImageService productImageService;

    @Autowired
    private PropertyValueService propertyValueService;

    @RequestMapping("/listProduct")
    public String findAll(Model model,Integer category_id) {
        }
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }

   /*  @RequestMapping("/deleteProduct")
   public String delete(Integer id,HttpServletRequest request) {
        productImageService.deleteByProductId(id);
        String path = request.getSession().getServletContext().getRealPath("" + id);
        deleteDir(new File(path));
        propertyValueService.deleteByProductId(id);
        int category_id = productService.get(id).getCategory_id();
        productService.delete(id);
        return "redirect:listProduct?category_id=" + category_id;
    }*/

/*    public static boolean deleteDir(File dir) {
        if(dir.isDirectory()){
            String[] children = dir.list();
            for(int i = 0 ;i < children.length;i++ ) {
                boolean success = deleteDir(new File(dir, children[i]));
                if(!success) {
                    return false;
                }
            }
        }
        return dir.delete();
    }*/
    @RequestMapping("/editProduct")
    public String edit(Integer id, Model model) {
        Product product = productService.get(id);
        model.addAttribute("product",product);
        Category category = categoryService.get(product.getCategory_id());
        model.addAttribute("category",category);
        return "admin/editProduct";
    }

    @RequestMapping("/updateProduct")
    public String update(Product product) {
        productService.update(product);
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }
}
package com.smzy.controller;

        model.addAttribute("category",category);
        return "admin/listProduct";
    }

    @RequestMapping("/addProductView")
    public String addView(Model model,Integer category_id) {
        Category category = categoryService.get(category_id);
        model.addAttribute("category",category);
        return "admin/addProductView";
    }
    @RequestMapping("/addProduct")
    public String add(Product product) {
        productService.add(product);
        ProductImage productImage = new ProductImage();
        productImage.setProduct_id(product.getId());
        for(int i = 1;i <= 5 ;i++) {
            productImageService.add(productImage);
        }
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }

   /*  @RequestMapping("/deleteProduct")
   public String delete(Integer id,HttpServletRequest request) {
        productImageService.deleteByProductId(id);
        String path = request.getSession().getServletContext().getRealPath("" + id);
        deleteDir(new File(path));
        propertyValueService.deleteByProductId(id);
        int category_id = productService.get(id).getCategory_id();
        productService.delete(id);
        return "redirect:listProduct?category_id=" + category_id;
    }*/

/*    public static boolean deleteDir(File dir) {
        if(dir.isDirectory()){
            String[] children = dir.list();
            for(int i = 0 ;i < children.length;i++ ) {
                boolean success = deleteDir(new File(dir, children[i]));
                if(!success) {
                    return false;
                }
            }
        }
        return dir.delete();

@Controller
@RequestMapping("/admin")
public class PropertyValueController {

    @Autowired
    private PropertyValueService propertyValueService;

    @Autowired
    private PropertyService propertyService;

    @Autowired
    private ProductService productService;

    @RequestMapping("/listPropertyValue")
    public String findAll(Model model ,Integer product_id ,Integer category_id) {
        List<PropertyValue> propertyValues = propertyValueService.findByProductId(product_id);
        model.addAttribute("propertyValues",propertyValues);
        Product product = productService.get(product_id);
        model.addAttribute("product",product);
        List<Property> properties = propertyService.findAll(category_id);
        model.addAttribute("properties",properties);
        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")
}
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")
    public String back() {
        return "back";
    }

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

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

    }

    @RequestMapping("/showProduct")
    public String showProduct(Model model, Integer product_id) {
        List<Category> categories = categoryService.findAll();
        model.addAttribute("categories", categories);
        Product product = productService.get(product_id);
        productService.setReviewCount(product);
        model.addAttribute("product", product);
        List<PropertyValue> propertyValues = propertyValueService.findByProductId(product_id);
        model.addAttribute("propertyValues", propertyValues);
        List<Review> reviews = reviewService.findByProductId(product_id);
        model.addAttribute("reviews", reviews);
        return "detail";
    }

    @RequestMapping("/searchProduct")
    public String searchProduct(Model model, String keyword) {
        PageHelper.offsetPage(0, 20);
        List<Product> products = productService.search(keyword);
        for (Product product: products) {
            product.setReviewCount(reviewService.getCount(product.getId()));
        }
        model.addAttribute("products", products);
        return "searchPage";
    }

    @RequestMapping("sortProduct")
    public String sortProduct(Model model, String sort, String keyword) {
        List<Product> products = productService.search(keyword);
        for (Product product : products) {
            product.setReviewCount(reviewService.getCount(product.getId()));
        }
        if (sort != null) {
            switch (sort) {
                case "all":
                    Collections.sort(products, Comparator.comparing(Product::getId));
                    break;
                case "sale":
                    Collections.sort(products, Comparator.comparing(Product::getSale));
                    break;
                case "price":
                    Collections.sort(products, Comparator.comparing(Product::getPrice));
            }
        }
            switch (sort) {
                case "all":
                    Collections.sort(products, Comparator.comparing(Product::getId));
                    break;
                case "sale":
                    Collections.sort(products, Comparator.comparing(Product::getSale));
                    break;
                case "price":
                    Collections.sort(products, Comparator.comparing(Product::getPrice));
            }
        }
        model.addAttribute("products", products);
        return "searchPage";
    }
//----------------------------------------------登录、注册-------------------------------------------------

    @RequestMapping("/login")
    public String login(Model model, @RequestParam("name") String name,
                        @RequestParam("password") String password,
                        HttpSession session) {
        User user = userService.get(name, password);
        if (null == user) {
            model.addAttribute("msg", "用户名或密码错误");
            return "loginPage";
        }
        session.setAttribute("user", user);
        return "redirect:home";
    }

    @RequestMapping("/logout")
    public String logout(HttpSession session) {
        session.removeAttribute("user");
        return "redirect:home";
    }

    @RequestMapping("/register")
    public String register(Model model, User user) {
        String name = user.getName();
        boolean exist = userService.isExist(name);
        if (exist) {
        propertyValueService.deleteByProductId(id);
        int category_id = productService.get(id).getCategory_id();
        productService.delete(id);
        return "redirect:listProduct?category_id=" + category_id;
    }*/

/*    public static boolean deleteDir(File dir) {
        if(dir.isDirectory()){
            String[] children = dir.list();
            for(int i = 0 ;i < children.length;i++ ) {
                boolean success = deleteDir(new File(dir, children[i]));
                if(!success) {
                    return false;
                }
            }
        }
        return dir.delete();
    }*/
    @RequestMapping("/editProduct")
    public String edit(Integer id, Model model) {
        Product product = productService.get(id);
        model.addAttribute("product",product);
        Category category = categoryService.get(product.getCategory_id());
        model.addAttribute("category",category);
        return "admin/editProduct";
    }

    @RequestMapping("/updateProduct")
    public String update(Product product) {
        productService.update(product);
        return "redirect:listProduct?category_id=" + product.getCategory_id();
    }
}
package com.smzy.controller;

    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)
            return "fail";

        List<OrderItem> ois = orderItemService.findByUserId(user.getId());
        for(OrderItem oi : ois) {
            if(oi.getProduct().getId().intValue() == product_id) {
                oi.setNumber(number);
                orderItemService.update(oi);
                break;
            }
        }
        return "success";
    }

    @RequestMapping("deleteOrderItem")
    @ResponseBody
    public String deleteOrderItem(Model model,HttpSession session,Integer orderItemId) {
        User user = (User) session.getAttribute("user");
        if(null == user)
            return "fail";
        orderItemService.delete(orderItemId);
        return "success";
    private PropertyValueService propertyValueService;

    @Autowired
    private ReviewService reviewService;

    @Autowired
    private UserService userService;

    @Autowired
    private OrderItemService orderItemService;

    @Autowired
    private OrderService orderService;

    @RequestMapping("/home")
    public String home(Model model) {
        List<Category> categories = categoryService.findAll();
        productService.fillAll(categories);
        model.addAttribute("categories", categories);
        return "index";
    }

    @RequestMapping("/showProduct")
    public String showProduct(Model model, Integer product_id) {
        List<Category> categories = categoryService.findAll();
        model.addAttribute("categories", categories);
        Product product = productService.get(product_id);
        productService.setReviewCount(product);
        model.addAttribute("product", product);
        List<PropertyValue> propertyValues = propertyValueService.findByProductId(product_id);
        model.addAttribute("propertyValues", propertyValues);
        List<Review> reviews = reviewService.findByProductId(product_id);
        model.addAttribute("reviews", reviews);
        return "detail";
    }

    @RequestMapping("/searchProduct")
    public String searchProduct(Model model, String keyword) {
        PageHelper.offsetPage(0, 20);
        List<Product> products = productService.search(keyword);
        for (Product product: products) {
            product.setReviewCount(reviewService.getCount(product.getId()));
        }
        model.addAttribute("products", products);
        return "searchPage";
    }

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值