Java毕业设计实战之线上水果超市商城的实现

主要技术实现:spring、 springmvc、 redis、 springboot、  mybatis 、session、 jquery 、 md5 、bootstarp.js  tomcat、、拦截器等。

主要功能实现: 前端:登录、注册、商品分类查看、浏览水果商品、订单管理、发表评论、收藏商品、购物车管理、个人订单管理查看、个人信息查看修改、地址管理等

后台管理员:后台登录、数据统计、系统版本信息等、管理员管理、角色管理、订单管理、通知公告管理、商品种类、和商品详情管理

主要功能截图如下:

用户填写相关信息进行注册:

水果商品数据列表查看:也可以根据关键字搜索水果商品信息

水果商品详情管理:点击可以查看水果商品购买详情数据、可以进行数量操作、加入订单和购物车以及收藏商品和查看排行等功能

我的购物车详情:可以结算以及继续购物和删除购物车信息等操作

订单详情管理:

我的个人信息管理:可以进行密码修改、订单查看管理、收藏查看管理、收获地址管理

我的评论查看:

我的收藏;可以移除收藏

后台管理员端主要实现: 超级管理员admin登录

系统首页:主要功能用户、角色、通知公告信息、商品种类以及商品详情管理和用户管理以及订单信息管理等数据操作。

后台菜单管理:

用户管理:

通知公告列表展示以及内容添加:

后台管理员对水果商品的管理:

上传商品详情信息:

商品评论数据维护:

订单管理和维护:

项目使用eclipse和idea运行、推荐idea、源码架构:

数据库设计ER图:

订单信息控制层:

@Controller
@RequestMapping("/orderInfo")
public class OrderInfoController  {
	@Autowired
	private IOrderInfoBiz orderInfoBiz;

	@RequestMapping("/addOrderInfo")
	@ResponseBody
	public Integer addOrderInfo(String ono, String odate, String ano, String price) {
		Integer in = 0;
		try {
			in = orderInfoBiz.addOrderInfo(ono, odate,ano,price);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return in;
	}

	@RequestMapping("/getOrder")
	@ResponseBody
	public List<OrderInfo> getOrder(String mno) {
		return orderInfoBiz.getOrder(mno);
	}

	@RequestMapping("/getallOrder")
	@ResponseBody
	public List<OrderInfo> getallOrder(String mno) {
		return orderInfoBiz.getallOrder(mno);
	}

	@RequestMapping("/setStatus")
	@ResponseBody
	public Integer setStatus(String ono) {
		System.out.println("修改1");
		return orderInfoBiz.setStatus(ono);
	}

	@RequestMapping("/getOrderByPage")
	@ResponseBody
	public List<OrderInfo> getOrderByPage(String mno, Integer page) {
		return orderInfoBiz.getOrderByPage(mno,page);
	}

	@RequestMapping("/getPage")
	@ResponseBody
	public Integer getPage(String mno) {
		int total=orderInfoBiz.getTotal(mno);
		int page=total%2==0?total/2:total/2+1;
		return page;
	}
}

商品管理控制层:

@Controller
@RequestMapping("/goodsInfo")
public class GoodsInfoController  {
	@Autowired
	private IGoodsInfoBiz goodsInfoBiz;

	@RequestMapping("/findAll")
	@ResponseBody
	public List<GoodsInfo> findAll() {
		return goodsInfoBiz.findAll();
	}

	@RequestMapping("/find")
	@ResponseBody
	public GoodsInfo find(String str) {
		System.out.println(goodsInfoBiz.find(str));
		return goodsInfoBiz.find(str);
	}

	@RequestMapping("/findByTno")
	@ResponseBody
	public List<GoodsInfo> findByTno(String tno,String start) {
		return goodsInfoBiz.findByTno(tno,start);
	}

	@RequestMapping("/updateBal")
	@ResponseBody
	public Integer updateBal(String[] gnos,String[] nums) {
		return goodsInfoBiz.updateBal(gnos,nums);
	}

	@RequestMapping("/finds")
	@ResponseBody
	public List<GoodsInfo> finds() {
		return goodsInfoBiz.finds();
	}
	@RequestMapping("/upload")
	@ResponseBody
	public Map<String, Object> add(@RequestParam("upload")MultipartFile pic,HttpServletRequest request) {
		Map<String, Object> map = new HashMap<String, Object>();
		if(pic.isEmpty()){
			return map;
		}
		try{
			String savePath = "images/goods";

			String path = request.getServletContext().getRealPath("");
			String temp = request.getServletContext().getInitParameter("uploadPath");
			if(temp != null){
				savePath = temp;
			}

			//在用户上传的文件名的前面加上时间戳
			savePath += "/" + new Date().getTime() + "_" +pic.getOriginalFilename();
			File dest = new File(new File(path).getParentFile(),savePath);

			//将本地图片保存到服务器
			pic.transferTo(dest);

			map.put("fileName", pic.getOriginalFilename());
			map.put("uploaded", 1);
			map.put("url","../../../"+savePath);
		}catch(IllegalStateException e){
			e.printStackTrace();
		}catch(IOException e){
			e.printStackTrace();
		}
		return map;

	}
	//管理员端的商品信息
	@RequestMapping("/addGood")
	@ResponseBody
	public int addGood(@RequestParam Map<String,Object> map,@RequestParam MultipartFile pic, HttpServletRequest request){
		int result =-1;

		if(pic.isEmpty()){
			result=-2;//说明没有图片需要上传
		}
		String savePath="";
		try {
			String path= request.getServletContext().getRealPath("");
			String temp = request.getServletContext().getInitParameter("uploadpath");
			if(!StringUtil.checkNull(temp)){
				savePath = temp;
			}

			savePath="images/goods/"+pic.getOriginalFilename();

			File dest = new File(path, savePath);
			//将图片存到服务器的指定文件夹
			pic.transferTo(dest);

		} catch (IllegalStateException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		map.put("pics", savePath);
		result=goodsInfoBiz.addGood(map);
		return result;
	}

	@RequestMapping("/findgoods")
	@ResponseBody
	public List<GoodsInfo> findgoods() {
		return goodsInfoBiz.findgoods();
	}

	@RequestMapping("/del")
	@ResponseBody
	public int del(String gno) {
		return goodsInfoBiz.del(gno);
	}

	@RequestMapping("/getPage")
	@ResponseBody
	public Integer getPage(String tno) {
		int total=goodsInfoBiz.getTotal(tno);
		int page=total%10==0?total/10:total/10+1;
		return page;
	}
}

购物车信息控制层:

@Controller
@RequestMapping("/cartInfo")
public class CartInfoController  {
	@Autowired
	private ICartInfoBiz cartInfoBiz;

	@RequestMapping("/finds")
	@ResponseBody
	public List<GoodsInfo> finds(String mno) {
		return cartInfoBiz.finds(mno);
	}

	@RequestMapping("/update")
	@ResponseBody
	public Integer update(String cno, Integer num) {
		return cartInfoBiz.update(cno, num);
	}

	@RequestMapping("/del")
	@ResponseBody
	public Integer del(String cno) {
		return cartInfoBiz.del(cno);
	}

	@RequestMapping("/add")
	@ResponseBody
	public Integer add(String mno, String gno, Integer num) {
		return cartInfoBiz.add(mno,gno,num);
	}

	@RequestMapping("/checkCar")
	@ResponseBody
	public Integer checkCar(String mno, String gno) {
		return cartInfoBiz.checkCar(mno,gno);
	}

	@RequestMapping("/dels")
	@ResponseBody
	public Integer dels(String[]  gnos)throws IOException {
		return cartInfoBiz.dels(gnos);
	}

}

管理信息控制层:

@Controller
@RequestMapping("/admin")
public class AdminInfoController  {
	@Autowired
	private IAdminInfoBiz adminInfoBiz;

	@RequestMapping("/checkLogin")
	@ResponseBody
	public Object checkLogin(HttpSession session) {
		Object obj = session.getAttribute("currentLoginUser");
		if(obj == null){
			return "{\"code\":\"101\"}";
		} else {
			return obj;
		}
	}
	@RequestMapping("/login")
	@ResponseBody
	public int login(String aname, String pwd, HttpSession session) {
		AdminInfo af = adminInfoBiz.login(aname, pwd);
		int result = 0;
		if(af != null){
			session.setAttribute("currentLoginUser", af);
			result = 1;
		}
		return result;
	}

	@RequestMapping("/success")
	public String loginSuccess(HttpSession session) {
		if(session.getAttribute("currentLoginUser") != null){
			return "/WEB-INF/back/page/index.html";
		} else {
			return "/bk/index.html";//以/开头从项目目录开始算
		}
	}

	@RequestMapping("/findAll")
	@ResponseBody
	public List<AdminInfo> findAll() {
		return adminInfoBiz.findAll();
	}

	@RequestMapping("/add")
	@ResponseBody
	public int add(String aname, String pwd, String tel) {
		return adminInfoBiz.add(aname,pwd,tel);
	}

	@RequestMapping("/update")
	@ResponseBody
	public int update(String aid,String tel) {
		return adminInfoBiz.update(aid,tel);
	}

	@RequestMapping("/del")
	@ResponseBody
	public int del(String aid) {
		return adminInfoBiz.del(aid);
	}

	/*@RequestMapping("/upload")
	@ResponseBody
	public Map<String, String> upload(MultipartFile pics, HttpServletRequest request, @RequestParam Map<String, Object> params) {
		if (pics.isEmpty()){
			return Collections.emptyMap();
		}
		String savePath = "../pics";
		try{
			String path = request.getServletContext().getRealPath("");
			String temp = request.getServletContext().getInitParameter("uploadpath");
			if(!StringUtil.checkNull(temp)){
				savePath = temp;
			}

			savePath += "/" + new Date().getTime() + "_" + new Random().nextInt(10000) + "-" + pics.getOriginalFilename();

			File dest = new File(path, savePath);
			//将图片存到服务器的指定文件
			pics.transferTo(dest);
		} catch (IllegalStateException e){
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		params.put("photo", savePath);

		if(adminInfoBiz.updatephoto(params) > 0){
			Map<String, String> map = new HashMap<String, String>();
			map.put("savepath", savePath);
			return map;
		} else {
			return Collections.emptyMap();
		}

	}*/
}

菜单信息控制层: 

@Controller
@RequestMapping("/menberInfo")
public class MenberInfoController  {
	@Autowired
	private IMenberInfoBiz menberInfoBiz;

	@RequestMapping("/logout")
	private Object logout(HttpSession session) {
		session.removeAttribute("LoginUser");
		return "logoutsuccess";
	}

	@RequestMapping("/checkLogin")
	@ResponseBody
	public Object checkLogin(HttpSession session) {
		Object obj = session.getAttribute("LoginUser");
		if(obj == null){
			return "{\"code\":\"101\"}";
		} else {
			return obj;
		}
	}
	@RequestMapping("/login")
	@ResponseBody
	public Integer login(String nickname, String pwd, HttpSession session) {
		MenberInfo mf = menberInfoBiz.login(nickname, pwd);
		int result = 0;
		if(mf != null){
			session.setAttribute("LoginUser", mf);
			result = 1;
		}
		return result;
	}

	@RequestMapping("/getTotal")
	public Integer getTotal(String no) {
		return menberInfoBiz.getTotal(no);			

	}

	@RequestMapping("/reg")
	@ResponseBody
	public int reg(@RequestParam Map<String, Object> map) {
		return menberInfoBiz.reg(map);
	}

	@RequestMapping("/checkName")
	@ResponseBody
	public int checkName(String nickname) {
		return menberInfoBiz.checkName(nickname);
	}

	@RequestMapping("/checkTel")
	@ResponseBody
	public int checkTel(String tel) {
		return menberInfoBiz.checkTel(tel);
	}

	@RequestMapping("/checkEmail")
	@ResponseBody
	public int checkEmail(String email) {
		return menberInfoBiz.checkEmail(email);
	}

	@RequestMapping("/findAll")
	@ResponseBody
	public List<MenberInfo> findAll() {
		return menberInfoBiz.findAll();
	}

	@RequestMapping("/del")
	@ResponseBody
	public int del(String mno) {
		return menberInfoBiz.del(mno);
	}
	/*@RequestMapping("/upload")
	@ResponseBody
	public Map<String, String> upload(MultipartFile pics, HttpServletRequest request, @RequestParam Map<String, Object> params) {
		if (pics.isEmpty()){
			return Collections.emptyMap();
		}
		String savePath = "../pics";
		try{
			String path = request.getServletContext().getRealPath("");
			String temp = request.getServletContext().getInitParameter("uploadpath");
			if(!StringUtil.checkNull(temp)){
				savePath = temp;
			}

			savePath += "/" + new Date().getTime() + "_" + new Random().nextInt(10000) + "-" + pics.getOriginalFilename();

			File dest = new File(path, savePath);
			//将图片存到服务器的指定文件
			pics.transferTo(dest);
		} catch (IllegalStateException e){
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		params.put("photo", savePath);

		if(adminInfoBiz.updatephoto(params) > 0){
			Map<String, String> map = new HashMap<String, String>();
			map.put("savepath", savePath);
			return map;
		} else {
			return Collections.emptyMap();
		}

	}*/

}

到此这篇关于Java毕业设计实战之线上水果超市商城的实现的文章就介绍到这了,更多相关Java 线上水果超市商城内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Java 实战项目锤炼之在线蛋糕商城系统的实现

    一.项目简述 功能: 主页显示热销商品:所有蛋糕商品展示,可进行商品搜 索:点击商品进入商品详情页,具有立即购买和加入购物 车功能,可增减购买商品数量亦可手动输入(同时验证库 存),热销商品展示.立即购买进入确认订单页面,可选择 已经添加的地址,亦可新增地址.(同时验证库存),可选 择购买哪些商品,可删除不需要的商品.点击结算进入确 认订单页面,确认后提交订单.后台管理:(修改密码 等),商品管理(商品批量添加.上下架等),订单管理. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.

  • Java实战花店商城系统的实现流程

    一.项目简述 本系统功能包括: 商品的分类展示,用户的注册登录,购物车,订单结算,购物车加减,后台商品管理,分类管理,订单管理等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等. 用户管

  • Java毕业设计实战之在线蛋糕销售商城的实现

    一.项目简述 功能: 主页显示商品: 所有蛋糕商品展示,可进行商品搜索: 点击商品进入商品详情页,具有立即购买功能,可增减购买商品数量亦可手动输入,热销商品展示. 立即购买进入确认订单页面,可选择已经添加的地址,亦可新增地址. 可选择购买哪些商品,可删除不需要的商品. 点击结算进入确认订单页面,确认后提交订单.后台管理:(修改密码等),商品管理(商品批量添加.上下架等),订单管理. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(Intelli

  • Java毕业设计实战项目之宠物商城系统的实现流程

    一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等. 后台相关接口: /** * 后台相关接口 */ @Controller @RequestMapping("/admin") publi

  • Java 实战项目锤炼之网上商城系统的实现流程

    一.项目简述(+需求文档+PPT) 功能: 主页显示热销商品:所有商品展示,可进行商品搜索:点 击商品进入商品详情页,显示库存,具有立即购买和加入 购物车功能,可增减购买商品数量亦可手动输入(同时验证 库存),热销商品展示.立即购买进入确认订单页面,可选 择已经添加的地址,亦可新增地址.(同时验证库存),可 选择购买哪些商品,可删除不需要的商品.点击结算进入 确认订单页面,确认后提交订单,订单重复提交给予响 应,库存不足或商品下架给予响应.后台管理:(修改密码 等),商品管理(商品批量添加.上下

  • Java毕业设计实战项目之在线服装销售商城系统的实现流程

    一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Spring + SpringBoot+ mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等. 后台管理-用户页: /** * 后台管理-用户页 */ @Controller public class UserContro

  • Java 实战项目锤炼之在线购书商城系统的实现流程

    一.项目简述 功能:一个基于JavaWeb的网上书店的设计与实现,归纳 出了几个模块,首先是登录注册模块,图书查找模块,购 物车模块,订单模块,个人中心模块,用户管理模块,图 书管理模块等. 该项目是javaJeb技术的实战操作,采用了MVC设计模 式,包括基本的entity, jscript, servlet,以及ajax异步请 求,查询分页,持久化层方法的封装等等,对javaweb技 术的巩固很有帮助,为J2EE的学习打下基础,适用于课程 设计,毕业设计. 二.项目运行 环境配置: Jdk1

  • Java实战玩具商城的前台与后台实现流程

    一.项目简述 本系统主要实现的功能有:网上商城系统,前台+后台管理,用户注册,登录,商品展示,分组展示,搜索,收货地址管理,购物车管理,添加,购买,个人信息修改.订单查询等等,后台商品管理,分类管理,库存管理,订单管理,用户管理,信息修改等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: Springboot+ SpringMVC + MyBatis

  • Java毕业设计实战之线上水果超市商城的实现

    主要技术实现:spring. springmvc. redis. springboot.  mybatis .session. jquery . md5 .bootstarp.js  tomcat..拦截器等. 主要功能实现: 前端:登录.注册.商品分类查看.浏览水果商品.订单管理.发表评论.收藏商品.购物车管理.个人订单管理查看.个人信息查看修改.地址管理等 后台管理员:后台登录.数据统计.系统版本信息等.管理员管理.角色管理.订单管理.通知公告管理.商品种类.和商品详情管理 主要功能截图如下

  • Java毕业设计实战之在线网盘系统的实现

    一.项目简述 功能:用户的邮箱注册.验证码验证以及用户登录. 不需要注册账号,也可以上传满足条件的临时文件,但是只4小时内有效. 文件的管理,上传.下载.重命名.删除.查看统计数据.分类管理等. 文件夹的管理,创建.删除.重命名. 文件的分享,支持通过链接和二维码的分享方式等等,以及管理员对用户的管理等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术:

  • Java毕业设计实战之二手书商城系统的实现

    一.项目简述 功能: 主页显示商品: 所有二手书商品展示,可进行商品搜索: 点击商品进入商品详情页,具有立即购买和加入购物车功能,可增减购买商品数量亦可手动输入,热销商品展示. 立即购买进入确认订单页面,可选择已经添加的地址,亦可新增地址. 可选择购买哪些商品,可删除不需要的商品. 点击结算进入确认订单页面,确认后提交订单.后台管理:(修改密码等),商品管理(商品批量添加.上下架等),订单管理. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(

  • Java毕业设计实战之校园一卡通系统的实现

    一.项目简述(+需求文档+PPT) 功能:卡管理,卡消费,卡充值,图书借阅,消费,记录,注销等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: JSP + Servlet + html+ css + JavaScript + JQuery + Ajax 等等 用户管理操作控制层: /** * 用户管理操作 */ @Controller @Requ

  • Java毕业设计实战之图片展览馆管理系统的实现

    一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持) 项目技术: Springboot+ SpringMVC + JPA+ Jsp + Html+ JavaScript + JQuery + Ajax + maven等等 订单服务: @WebServlet("/order/OrderServlet") public class OrderServlet exte

  • Java毕业设计实战之平行志愿管理系统的实现

    一.项目简述 本系统功能包括: 系统管理,招生计划,学生管理,录取结果,自动分配,调剂管理等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等. 学生管理控制层: @RestControlle

  • Java毕业设计实战之教室预订管理系统的实现

    一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Spring + SpringBoot+ mybatis + Maven + Vue 等等组成,B/S模式 + Maven管理等等. 用户管理控制器: /** * 用户管理控制器 */ @RequestMapping("/user/") @Contr

  • Java毕业设计实战之共享租车信息管理系统的实现

    基于servlet+jsp+jdbc的后台管理系统,包含5个模块:汽车账户部管理.租车账户部管理.汽车信息管理表.租车记录表.租车租聘表.功能完整,均能实现增删查改. 运行环境: jdk8+tomcat8.5+mysql5.7+Eclipse 项目技术: servlet+jsp+jdbc+easyui+jquery       主页登陆注册业务: public class ForeServlet extends BaseForeServlet { /** * 显示主页 * * @param re

随机推荐