美食推荐系统 (协同过滤 + 内容过滤(余弦函数))(SSM,MySQL)

发布于:2023-01-10 ⋅ 阅读:(390) ⋅ 点赞:(0)

美食推荐系统  (协同过滤 + 内容过滤(余弦函数))(SSM,MySQL)(毕业论文15581字以上,共39页,程序代码,MySQL数据库)

【运行环境】  IDEA, Eclipse   JDK1.7(JDK1.8)   Tomcat7(Tomcat8)

【技术栈】  JAVA, JSP, SSM, JQUERY,   MYSQL, HTML, CSS, JAVASCRIPT, H-UI

链接:https://pan.baidu.com/s/1jvZc0i_jJc1uXjSLOcaGXg 
提取码:8888 
--来自百度网盘超级会员V7的分享

【视频教程

【项目包含内容

【文档包含内容】

【项目功能介绍】

    本系统由两个大模块组成:前台用户界面和后台管理员界面。前台用户界面主要是分为:查看部分美食,查看美食详细信息,查看更多美食,加入用户收藏,确认订购信息,修改用户收藏,部分删除用户收藏信息,清空用户收藏和提交用户评价等购物网站常见功能。后台主要是管理员对网站信息的添加,更新、删除和查询。分为:用户管理、美食分类管理、美食信息管理以及用户评价管理。用户管理包括用户信息查询和删除。美食管理包括美食录入,涉及图片传送功能。用户评价管理包括查询和删除用户评价。美食分类管理包括查询美食分类。添加用户身份的验证,美食限定购买数量验证等功能加强了各种信息的安全性。

ComplainController.java

package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Complains;
import com.service.ComplainsService;
import com.entity.Users;
import com.service.UsersService;
import com.util.PageHelper;
import com.util.VeDate;
//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/complains" , produces = "text/plain;charset=utf-8")
public class ComplainsController extends BaseController {
	// @Autowired的作用是自动注入依赖的ServiceBean
	@Autowired
	private ComplainsService complainsService;
	@Autowired
	private UsersService usersService;

	// 准备添加数据
	@RequestMapping("createComplains.action")
	public String createComplains() {
		List<Users> usersList = this.usersService.getAllUsers();
		this.getRequest().setAttribute("usersList", usersList);
		return "admin/addcomplains";
	}
	// 添加数据
	@RequestMapping("addComplains.action")
	public String addComplains(Complains complains) {
		complains.setUsersid("");
		complains.setTitle("");
		complains.setAddtime(VeDate.getStringDateShort());
		complains.setStatus("");
		this.complainsService.insertComplains(complains);
		return "redirect:/complains/createComplains.action";
	}

	// 通过主键删除数据
	@RequestMapping("deleteComplains.action")
	public String deleteComplains(String id) {
		this.complainsService.deleteComplains(id);
		return "redirect:/complains/getAllComplains.action";
	}

	// 批量删除数据
	@RequestMapping("deleteComplainsByIds.action")
	public String deleteComplainsByIds() {
		String[] ids = this.getRequest().getParameterValues("complainsid");
		if (ids != null) {
			for (String complainsid : ids) {
				this.complainsService.deleteComplains(complainsid);
			}
		}
		return "redirect:/complains/getAllComplains.action";
	}

	// 更新数据
	@RequestMapping("updateComplains.action")
	public String updateComplains(Complains complains) {
		this.complainsService.updateComplains(complains);
		return "redirect:/complains/getAllComplains.action";
	}

	// 更新状态
	@RequestMapping("status.action")
	public String status(String id) {
		String status = "";
		Complains complains = this.complainsService.getComplainsById(id);
		if (status.equals(complains.getStatus())) {
			status = "";
		}
		complains.setStatus(status);
		this.complainsService.updateComplains(complains);
		return "redirect:/complains/getAllComplains.action";
	}

	// 显示全部数据
	@RequestMapping("getAllComplains.action")
	public String getAllComplains(String number) {
		List<Complains> complainsList = this.complainsService.getAllComplains();
		PageHelper.getPage(complainsList, "complains", null, null, 10, number, this.getRequest(), null);
		return "admin/listcomplains";
	}

	// 按条件查询数据 (模糊查询)
	@RequestMapping("queryComplainsByCond.action")
	public String queryComplainsByCond(String cond, String name, String number) {
		Complains complains = new Complains();
		if(cond != null){
			if ("usersid".equals(cond)) {
				complains.setUsersid(name);
			}
			if ("title".equals(cond)) {
				complains.setTitle(name);
			}
			if ("contents".equals(cond)) {
				complains.setContents(name);
			}
			if ("addtime".equals(cond)) {
				complains.setAddtime(name);
			}
			if ("status".equals(cond)) {
				complains.setStatus(name);
			}
			if ("reps".equals(cond)) {
				complains.setReps(name);
			}
		}

		List<String> nameList = new ArrayList<String>();
		List<String> valueList = new ArrayList<String>();
		nameList.add(cond);
		valueList.add(name);
		PageHelper.getPage(this.complainsService.getComplainsByLike(complains), "complains", nameList, valueList, 10, number, this.getRequest(), "query");
		name = null;
		cond = null;
		return "admin/querycomplains";
	}

	// 按主键查询数据
	@RequestMapping("getComplainsById.action")
	public String getComplainsById(String id) {
		Complains complains = this.complainsService.getComplainsById(id);
		this.getRequest().setAttribute("complains", complains);
		List<Users> usersList = this.usersService.getAllUsers();
		this.getRequest().setAttribute("usersList", usersList);
		return "admin/editcomplains";
	}


}

FoodsController.java

package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Foods;
import com.service.FoodsService;
import com.entity.Cate;
import com.service.CateService;
import com.util.PageHelper;
import com.util.VeDate;
//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/foods" , produces = "text/plain;charset=utf-8")
public class FoodsController extends BaseController {
	// @Autowired的作用是自动注入依赖的ServiceBean
	@Autowired
	private FoodsService foodsService;
	@Autowired
	private CateService cateService;

	// 准备添加数据
	@RequestMapping("createFoods.action")
	public String createFoods() {
		List<Cate> cateList = this.cateService.getAllCate();
		this.getRequest().setAttribute("cateList", cateList);
		return "admin/addfoods";
	}
	// 添加数据
	@RequestMapping("addFoods.action")
	public String addFoods(Foods foods) {
		foods.setAddtime(VeDate.getStringDateShort());
		foods.setHits("0");
		foods.setSellnum("0");
		this.foodsService.insertFoods(foods);
		return "redirect:/foods/createFoods.action";
	}

	// 通过主键删除数据
	@RequestMapping("deleteFoods.action")
	public String deleteFoods(String id) {
		this.foodsService.deleteFoods(id);
		return "redirect:/foods/getAllFoods.action";
	}

	// 批量删除数据
	@RequestMapping("deleteFoodsByIds.action")
	public String deleteFoodsByIds() {
		String[] ids = this.getRequest().getParameterValues("foodsid");
		if (ids != null) {
			for (String foodsid : ids) {
				this.foodsService.deleteFoods(foodsid);
			}
		}
		return "redirect:/foods/getAllFoods.action";
	}

	// 更新数据
	@RequestMapping("updateFoods.action")
	public String updateFoods(Foods foods) {
		this.foodsService.updateFoods(foods);
		return "redirect:/foods/getAllFoods.action";
	}

	// 显示全部数据
	@RequestMapping("getAllFoods.action")
	public String getAllFoods(String number) {
		List<Foods> foodsList = this.foodsService.getAllFoods();
		PageHelper.getPage(foodsList, "foods", null, null, 10, number, this.getRequest(), null);
		return "admin/listfoods";
	}

	// 按条件查询数据 (模糊查询)
	@RequestMapping("queryFoodsByCond.action")
	public String queryFoodsByCond(String cond, String name, String number) {
		Foods foods = new Foods();
		if(cond != null){
			if ("foodsname".equals(cond)) {
				foods.setFoodsname(name);
			}
			if ("cateid".equals(cond)) {
				foods.setCateid(name);
			}
			if ("image".equals(cond)) {
				foods.setImage(name);
			}
			if ("price".equals(cond)) {
				foods.setPrice(name);
			}
			if ("recommend".equals(cond)) {
				foods.setRecommend(name);
			}
			if ("special".equals(cond)) {
				foods.setSpecial(name);
			}
			if ("addtime".equals(cond)) {
				foods.setAddtime(name);
			}
			if ("hits".equals(cond)) {
				foods.setHits(name);
			}
			if ("sellnum".equals(cond)) {
				foods.setSellnum(name);
			}
			if ("contents".equals(cond)) {
				foods.setContents(name);
			}
		}

		List<String> nameList = new ArrayList<String>();
		List<String> valueList = new ArrayList<String>();
		nameList.add(cond);
		valueList.add(name);
		PageHelper.getPage(this.foodsService.getFoodsByLike(foods), "foods", nameList, valueList, 10, number, this.getRequest(), "query");
		name = null;
		cond = null;
		return "admin/queryfoods";
	}

	// 按主键查询数据
	@RequestMapping("getFoodsById.action")
	public String getFoodsById(String id) {
		Foods foods = this.foodsService.getFoodsById(id);
		this.getRequest().setAttribute("foods", foods);
		List<Cate> cateList = this.cateService.getAllCate();
		this.getRequest().setAttribute("cateList", cateList);
		return "admin/editfoods";
	}


}

OrderController.java

package com.controller;

import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Orders;
import com.service.OrdersService;
import com.entity.Users;
import com.service.UsersService;
import com.util.PageHelper;

//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/orders", produces = "text/plain;charset=utf-8")
public class OrdersController extends BaseController {
	// @Autowired的作用是自动注入依赖的ServiceBean
	@Autowired
	private OrdersService ordersService;
	@Autowired
	private UsersService usersService;

	// 准备添加数据
	@RequestMapping("createOrders.action")
	public String createOrders() {
		List<Users> usersList = this.usersService.getAllUsers();
		this.getRequest().setAttribute("usersList", usersList);
		return "admin/addorders";
	}

	// 添加数据
	@RequestMapping("addOrders.action")
	public String addOrders(Orders orders) {
		this.ordersService.insertOrders(orders);
		return "redirect:/orders/createOrders.action";
	}

	// 通过主键删除数据
	@RequestMapping("deleteOrders.action")
	public String deleteOrders(String id) {
		this.ordersService.deleteOrders(id);
		return "redirect:/orders/getAllOrders.action";
	}

	// 批量删除数据
	@RequestMapping("deleteOrdersByIds.action")
	public String deleteOrdersByIds() {
		String[] ids = this.getRequest().getParameterValues("ordersid");
		if (ids != null) {
			for (String ordersid : ids) {
				this.ordersService.deleteOrders(ordersid);
			}
		}
		return "redirect:/orders/getAllOrders.action";
	}

	// 更新数据
	@RequestMapping("updateOrders.action")
	public String updateOrders(Orders orders) {
		this.ordersService.updateOrders(orders);
		return "redirect:/orders/getAllOrders.action";
	}

	// 更新状态
	@RequestMapping("status.action")
	public String status(String id) {
		String status = "已发货";
		Orders orders = this.ordersService.getOrdersById(id);
		orders.setStatus(status);
		this.ordersService.updateOrders(orders);
		return "redirect:/orders/getAllOrders.action";
	}

	// 显示全部数据
	@RequestMapping("getAllOrders.action")
	public String getAllOrders(String number) {
		List<Orders> ordersList = this.ordersService.getAllOrders();
		PageHelper.getPage(ordersList, "orders", null, null, 10, number, this.getRequest(), null);
		return "admin/listorders";
	}

	// 按条件查询数据 (模糊查询)
	@RequestMapping("queryOrdersByCond.action")
	public String queryOrdersByCond(String cond, String name, String number) {
		Orders orders = new Orders();
		if (cond != null) {
			if ("ordercode".equals(cond)) {
				orders.setOrdercode(name);
			}
			if ("usersid".equals(cond)) {
				orders.setUsersid(name);
			}
			if ("total".equals(cond)) {
				orders.setTotal(name);
			}
			if ("addtime".equals(cond)) {
				orders.setAddtime(name);
			}
			if ("status".equals(cond)) {
				orders.setStatus(name);
			}
			if ("receiver".equals(cond)) {
				orders.setReceiver(name);
			}
			if ("address".equals(cond)) {
				orders.setAddress(name);
			}
			if ("contact".equals(cond)) {
				orders.setContact(name);
			}
		}

		List<String> nameList = new ArrayList<String>();
		List<String> valueList = new ArrayList<String>();
		nameList.add(cond);
		valueList.add(name);
		PageHelper.getPage(this.ordersService.getOrdersByLike(orders), "orders", nameList, valueList, 10, number, this.getRequest(), "query");
		name = null;
		cond = null;
		return "admin/queryorders";
	}

	// 按主键查询数据
	@RequestMapping("getOrdersById.action")
	public String getOrdersById(String id) {
		Orders orders = this.ordersService.getOrdersById(id);
		this.getRequest().setAttribute("orders", orders);
		List<Users> usersList = this.usersService.getAllUsers();
		this.getRequest().setAttribute("usersList", usersList);
		return "admin/editorders";
	}

}

【项目代码截图】

【数据库截图】

【文档部分截图】

【数据库截图】

【项目运行截图】   

                                                                       

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到