基于javaweb的在线水果商城系统(springboot+spring+springmvc+mybatis+html+mysql+redis)
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
一、项目简述
功能: 区分为管理员用户和普通用户,普通用户:用户注册登录,首页水果展示,商品分类展示,购物车添加,下单,订单查询,个人信息修改,管理员用户:包括水果基本信息维护增删改查,分类管理,订单管理,用户管理等等功能。
二、项目运行
环境配置:
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
项目技术:
springboot+spring+springmvc+mybatis+html+mysql+redis+thymeleaf
商品信息控制层:
@Controller
@RequestMapping(“/goodsInfo”)
public class GoodsInfoController {
@Autowired
private IGoodsInfoBiz goodsInfoBiz;
@RequestMapping(“/findAll”)
@ResponseBody
public List 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 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 finds() {
return goodsInfoBiz.finds();
@RequestMapping(“/upload”)
@ResponseBody
public Map
Map
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
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 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(“/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 getOrder(String mno) {
return orderInfoBiz.getOrder(mno);
@RequestMapping(“/getallOrder”)
@ResponseBody
public List 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 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(“/cartInfo”)
public class CartInfoController {
@Autowired
private ICartInfoBiz cartInfoBiz;
@RequestMapping(“/finds”)
@ResponseBody
public List 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);