源码获取:俺的博客首页 "资源" 里下载!
本项目分为管理员与用户两种角色;
管理员角色包含以下功能:
管理员登录,商品管理,订单管理,人员管理,轮播图管理,评价管理,商品分类管理,修改管理员资料,修改密码等功能。
用户角色包含以下功能:
用户登录,查看首页,查看商品详情,查找商品,查看我的订单,修改密码,添加地址,查看购物车,确认下单 ,提交订单,修改个人资料等功能。
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+Mbytes
2. 前端:JSP+css+javascript+bootstrap+jQuery+layui+echarts
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中applicationContext.xml配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入localhost:8080/ssm_xiezishop







- @Controller
- @RequestMapping("/goods")
- public class GoodsController {
- @Autowired
- private IGoodsService goodsService;
- @Autowired
- private IGuessService guessService;
- @Autowired
- private IEvaluateService evaluateService;
-
- @RequestMapping("findAll")
- public String findAllGoods(Model model){
- List<Goods> list = goodsService.findAll();
- model.addAttribute("goodsList", list);
- return "list";
- }
- @RequestMapping("/findGoodsDiscounts")
- @ResponseBody
- public JSONObject findGoodsDiscounts(){
- PageInfo<Goods> info = goodsService.findGoodsDiscounts();
- JSONObject obj = new JSONObject();
- obj.put("msg", "");
- obj.put("code", 0);
- obj.put("count", info.getTotal());
- obj.put("data", info.getList());
- return obj;
- }
-
- @RequestMapping("{goodsId}")
- public String findAllGoods(@PathVariable("goodsId")Integer goodsId,Model model){
- Goods goods = goodsService.findById(goodsId);
- List<Evaluate> evaList = evaluateService.findEvaluateByGoodsId(goodsId);
- model.addAttribute("goods", goods);
- model.addAttribute("evaList", evaList);
- return "detail";
- }
-
- @RequestMapping("preUpdate")
- public String preUpdate(Integer goodsId,Model model){
- Goods goods = goodsService.findById(goodsId);
- model.addAttribute("goods", goods);
- return "update";
- }
-
- @RequestMapping("findBySplitPage")
- @ResponseBody
- public JSONObject findBySplitPage(Integer page,Integer limit,String keyword){
- PageInfo<Goods> info = goodsService.findBySplitPage(page, limit,keyword);
- JSONObject obj=new JSONObject();
- obj.put("msg", "");
- obj.put("code", 0);
- obj.put("count", info.getTotal());
- obj.put("data", info.getList());
- return obj;
- }
-
- @RequestMapping("findGoodsByType")
- @ResponseBody
- public List<Goods> findGoodsByType(Integer typeId){
- List<Goods> list = goodsService.findGoodsByType(typeId);
- return list;
- }
-
- @RequestMapping("detail")
- public String findGoodsDetail(Integer goodsId,Model model,HttpServletRequest request){
- Goods goods = goodsService.findById(goodsId);
- model.addAttribute("goods",goods);
- model.addAttribute("evaList", goods.getEvaList());
- HttpSession session = request.getSession();
- Users user=(Users) session.getAttribute("user");
- if(user!=null){
- Guess guess = guessService.findGuessByUserId(user.getUserId(), goods.getGoodsId());
- if(guess!=null){
- guess.setGuessNum(guess.getGuessNum()+1);
- guessService.updateGuess(guess);
- }else{
- Guess g=new Guess(goods, 1, -1, user);
- guessService.addGuess(g);
- }
- }
- return "userview/product_detail";
- }
-
- @RequestMapping("findHotGoods")
- @ResponseBody
- public List<Goods> findHotGoods(){
- return goodsService.findHotGoods(4);
- }
-
- @RequestMapping("search")
- public ModelAndView searchGoodsByName(String keyWord){
- ModelAndView mv=new ModelAndView();
- List<Goods> list = goodsService.findGoodsLikeName(keyWord);
- mv.addObject("searchList",list);
- mv.setViewName("userview/search");
- return mv;
- }
-
- @RequestMapping("searchPre")
- @ResponseBody
- public List<Goods> searchPreGoods(String keyword){
- List<Goods> list = goodsService.findGoodsLikeName(keyword);
- return list;
- }
-
- @RequestMapping("delete")
- @ResponseBody
- public String deleteGoods(Integer goodsId){
- Integer rs = goodsService.deleteGoods(goodsId);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
-
- @RequestMapping("updateGoods")
- @ResponseBody
- public String updateGoods(Goods goods){
- Integer rs = goodsService.update(goods);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
-
- @RequestMapping("batchDelete")
- @ResponseBody
- public String batchDelete(String batchId){
- Integer rs=0;
- String[] id = batchId.split(",");
- for (String s : id) {
- Integer goodsId = Integer.valueOf(s);
- rs = goodsService.deleteGoods(goodsId);
- }
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
-
- @RequestMapping(value="uploadImg",method={RequestMethod.POST})
- @ResponseBody
- public Object uploadGoodsImg(@PathVariable(value="file")MultipartFile file,HttpServletRequest request){
- String str = file.getOriginalFilename();
- String name=UUIDUtil.getUUID()+str.substring(str.lastIndexOf("."));
- String path=request.getSession().getServletContext().getRealPath("/upload")+"/"+name;
- try {
- file.transferTo(new File(path));
- } catch (IllegalStateException | IOException e) {
- e.printStackTrace();
- }
- JSONObject obj=new JSONObject();
- obj.put("src", name);
- return obj;
- }
-
- @RequestMapping("addGoods")
- @ResponseBody
- public String addGoods(Goods goods){
- Integer rs = goodsService.addGoods(goods);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
- @RequestMapping("findGoodsByVolume")
- @ResponseBody
- public JSONObject findGoodsByVolume(){
- List<Goods> goodsList = goodsService.findGoodsByVolume(5);
- String[] name=new String[5];
- Integer[] volume=new Integer[5];
- for(int i=0;i<goodsList.size();i++){
- name[i]=goodsList.get(i).getGoodsName();
- volume[i]=goodsList.get(i).getGoodsVolume();
- }
- JSONObject obj=new JSONObject();
- obj.put("name", name);
- obj.put("volume", volume);
- return obj;
- }
-
- @RequestMapping("chaozan")
- @ResponseBody
- public JSONObject chaozan(Integer goodsId,HttpServletRequest request){
- HttpSession session = request.getSession();
- Users user=(Users) session.getAttribute("user");
- Integer rs = goodsService.chaozan(user.getUserId(),goodsId);
- Goods goods = goodsService.findById(goodsId);
- JSONObject obj=new JSONObject();
- if(rs>0){
- obj.put("goodzan", goods.getGoodsZan());
- obj.put("result", "success");
- }else{
- obj.put("result", "fail");
- }
- return obj;
- }
- }
- @Controller
- @RequestMapping("/user")
- public class UserController {
- private static final String String = null;
- @Autowired
- private IUserService userService;
-
- @RequestMapping("login")
- @ResponseBody
- public String login(String userName,String userPass,HttpServletRequest request){
- Users user = userService.login(userName, MD5Utils.passToMD5(userPass));
- if(user!=null){
- HttpSession session = request.getSession();
- session.setAttribute("user", user);
- return "success";
- }
- return "fail";
- }
- @RequestMapping("logout")
- public String logout(HttpServletRequest request){
- HttpSession session = request.getSession();
- session.removeAttribute("user");
- return "index";
- }
-
- @RequestMapping("amendinfo")
- public String preModifyInfo(HttpServletRequest request,Model model){
- HttpSession session = request.getSession();
- Users user = (Users) session.getAttribute("user");
- model.addAttribute("user", user);
- return "userview/amend_info";
- }
- @RequestMapping(value="upload",method={RequestMethod.POST})
- @ResponseBody
- public JSONObject uploadHeaderPic(@PathVariable(value="file")MultipartFile file,HttpServletRequest request){
- String str = file.getOriginalFilename();
- String name=UUIDUtil.getUUID()+str.substring(str.lastIndexOf("."));
- String path=request.getServletContext().getRealPath("/upload")+"/"+name;
- try {
- file.transferTo(new File(path));
- } catch (IllegalStateException | IOException e) {
- e.printStackTrace();
- }
- JSONObject obj=new JSONObject();
- obj.put("userImg", name);
- return obj;
- }
- @RequestMapping("updateUserInfo")
- public String updateUserInfo(Users user,Model model,HttpServletRequest request){
- Integer rs = userService.updateUserInfo(user);
- Users u = userService.findUserById(user.getUserId());
- HttpSession session = request.getSession();
- session.setAttribute("user", u);
- model.addAttribute("user", u);
- return "userview/amend_info";
- }
- @RequestMapping("modifyUserPass")
- @ResponseBody
- public String modifyUserPass(String oldPass,String newPass,String rePass,HttpServletRequest request){
- HttpSession session = request.getSession();
- Users user = (Users) session.getAttribute("user");
- if(MD5Utils.passToMD5(oldPass).equals(user.getUserPass()) && newPass.equals(rePass)){
- user.setUserPass(MD5Utils.passToMD5(newPass));
- userService.updateUserInfo(user);
- session.removeAttribute("user");
- return "success";
- }else{
- return "fail";
- }
- }
- @RequestMapping("findAllUser")
- @ResponseBody
- public JSONObject findAllUser(Integer page,Integer limit,String keyword){
- PageInfo<Users> info = userService.findAllUsersBySplitPage(page,limit,keyword);
- JSONObject obj=new JSONObject();
- obj.put("msg", "");
- obj.put("code", 0);
- obj.put("count",info.getTotal());
- obj.put("data", info.getList());
- return obj;
- }
- @RequestMapping("changeUserState")
- @ResponseBody
- public String changeUserState(Integer userId,Integer state){
- Integer rs = userService.changeUserState(state, userId);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
- @RequestMapping("updateUser")
- @ResponseBody
- public String updateUser(Users user){
- Integer rs = userService.updateUserInfo(user);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
- @RequestMapping("deleteUser")
- @ResponseBody
- public String deleteUser(Integer userId){
- Integer rs = userService.deleteUser(userId);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
- @RequestMapping("batchDelete")
- @ResponseBody
- public String batchDelete(String batchId){
- String[] list = batchId.split(",");
- boolean flag=true;
- for (String id : list) {
- Integer userId = Integer.valueOf(id);
- Integer rs = userService.deleteUser(userId);
- if(rs<0){
- flag=false;
- }
- }
- if(flag){
- return "success";
- }else{
- return "fail";
- }
- }
- @RequestMapping("register")
- @ResponseBody
- public String register(Users user){
- user.setUserPass(MD5Utils.passToMD5(user.getUserPass()));
- Integer rs = userService.addUser(user);
- if(rs>0){
- return "success";
- }else{
- return "fail";
- }
- }
- }
- @Controller
- @Scope("prototype")
- @RequestMapping("/admin")
- public class AdminController {
- @Autowired
- private IAdminService adminService;
-
- @RequestMapping("/login")
- @ResponseBody
- public String login(String adminName,String adminPass,HttpServletRequest request){
- Admins admin = adminService.login(adminName, adminPass);
- HttpSession session = request.getSession();
- if(admin!=null){
- session.setAttribute("admin", admin);
- request.setAttribute("admins", adminService.findAll());
- return "success";
- }
- return "fail";
- }
- @RequestMapping("/findAll")
- @ResponseBody
- public JSONObject findAll(){
- PageInfo<Admins> info = adminService.findAll();
- JSONObject obj = new JSONObject();
- obj.put("msg", "");
- obj.put("code", 0);
- obj.put("count", info.getTotal());
- obj.put("data", info.getList());
- return obj;
- }
- @RequestMapping("logout")
- public String logout(HttpServletRequest request){
- HttpSession session = request.getSession();
- session.removeAttribute("admin");
- return "forward:/view/admin";
- }
- @RequestMapping("updatePass")
- @ResponseBody
- public String updatePass(String oldPass,String newPass,HttpServletRequest request){
- HttpSession session = request.getSession();
- Admins admin = (Admins) session.getAttribute("admin");
- if(oldPass.equals(admin.getAdminPass())){
- admin.setAdminPass(newPass);
- adminService.updateAdmin(admin);
- session.removeAttribute("admin");
- return "success";
- }
- return "fail";
- }
- }
源码获取:俺的博客首页 "资源" 里下载!