Java项目:鞋子商城系统(java+SSM+JSP+layui+bootstrap+echarts+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+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";
	}
}

源码获取:俺的博客首页 "资源" 里下载!

猜你喜欢

转载自blog.csdn.net/m0_66863468/article/details/125438638