基于javaweb的水果生鲜商城系统(java+springboot+mybatis+vue+mysql)

运行环境

Java≥8、MySQL≥5.7、Node.js≥10

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行

前端:WebStorm/VSCode/HBuilderX等均可

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的水果生鲜商城系统(java+Springboot+Maven+mybatis+Vue+Mysql)

一、项目简述 本系统功能包括: 商品的分类展示,用户的注册登录,购物车,订单结算,购物车加减,后台商品管理,分类管理,订单管理等等功能。

二、项目运行 环境配置:

Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。

项目技术:

Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等。

用户管理控制层:

/**

  • 用户

**/

@RestController

@RequestMapping(“user”)

public class UserController {

@Autowired

UserService userService;

@Autowired

UserDao dao;

@RequestMapping(“/test”)

R test() {

R r = new R();

return r.setCode(4000).setMsg(Constant.IMG_PATH).setData(dao.findAll());

@RequestMapping(“/queryInfoByAccount”)

R queryInfoByAccount(@RequestParam(“account”) String account) {

R r = new R();

if (StringUtil.isEmpty(account)){

return r.setCode(4000).setMsg(HttpMsg.INVALID_PARAM);

User loginUser = userService.queryInfo(account);

if (loginUser == null){

return r.setCode(4000).setMsg(HttpMsg.INVALID_USER);

return r.setCode(2000).setData(loginUser);

@RequestMapping(“/find”)

R find(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List users = userService.find(searchKey);

if (users == null) {

return r.setCode(2000);

List items = users.size() >= page * Constant.PAGE_SIZE ?

users.subList((page - 1) * Constant.PAGE_SIZE, page * Constant.PAGE_SIZE)

: users.subList((page - 1) * Constant.PAGE_SIZE, users.size());

int len = users.size() % Constant.PAGE_SIZE == 0 ? users.size() / Constant.PAGE_SIZE

: (users.size() / Constant.PAGE_SIZE + 1);

map.put(“items”, items);

map.put(“len”, len);

return r.setCode(2000).setData(map);

@RequestMapping(“/create”)

R create(@RequestBody User user) {

R r = new R();

int ans = userService.add(user);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.ADD_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.ADD_USER_FAILED);

@RequestMapping(“/update”)

R update(@RequestBody User user) {

R r = new R();

int ans = userService.update(user);

if (ans >= 0) {

return r.setCode(2000).setMsg(HttpMsg.UPDATE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.UPDATE_USER_FAILED);

@DeleteMapping(“/delete”)

R delete(@RequestParam(“id”) int id) {

R r = new R();

int ans = userService.delete(id);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.DELETE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.DELETE_USER_FAILED);

订单管理控制层:

@RestController

@RequestMapping(“order”)

public class OrderController {

@Autowired

OrderService orderService;

@Autowired

UserDao userDao;

@Autowired

OrderDao orderDao;

@Autowired

FlowersDao flowersDao;

@RequestMapping(“/test”)

R test() {

R r = new R();

return r.setCode(4000).setMsg(Constant.IMG_PATH).setData(orderDao.findAll(null));

@RequestMapping(“/queryByAccount”)

R queryByAccount(@RequestParam(“account”) String account) {

R r = new R();

if (StringUtil.isEmpty(account)) {

return r.setCode(4000).setMsg(HttpMsg.INVALID_PARAM);

List orders = orderService.queryByAccount(account);

return r.setCode(2000).setData(orders);

@RequestMapping(“/find”)

R find(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey, @RequestParam(“account”) String account) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List orders = orderService.find(searchKey, account);

if (orders == null) {

return r.setCode(2000);

map.put(“items”, orders);

map.put(“len”, orders.size());

return r.setCode(2000).setData(map);

@RequestMapping(“/findAll”)

R findAll(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List orders = orderService.findAll(searchKey);

if (orders == null) {

return r.setCode(2000);

List items = orders.size() >= page * Constant.PAGE_SIZE ?

orders.subList((page - 1) * Constant.PAGE_SIZE, page * Constant.PAGE_SIZE)

: orders.subList((page - 1) * Constant.PAGE_SIZE, orders.size());

int len = orders.size() % Constant.PAGE_SIZE == 0 ? orders.size() / Constant.PAGE_SIZE

: (orders.size() / Constant.PAGE_SIZE + 1);

List vos = new ArrayList<>();

for (Order item : items) {

User user = userDao.queryById(item.getUid());

OrderVo vo = new OrderVo();

vo.setAddress(user.getAddress()).setPhone(user.getPhone()).setUsername(user.getName())

.setAmount(item.getAmount()).setFlower(item.getFlower()).setId(item.getId())

.setUid(item.getUid()).setOrder_guid(item.getOrder_guid()).setPrice(item.getPrice())

.setState(item.getState());

vos.add(vo);

map.put(“items”, vos);

map.put(“len”, len);

return r.setCode(2000).setData(map);

@RequestMapping(“/update”)

R update(@RequestBody Order order) {

R r = new R();

int ans = orderService.update(order);

if (ans >= 0) {

return r.setCode(2000).setMsg(HttpMsg.UPDATE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.UPDATE_USER_FAILED);

@RequestMapping(“/changeState”)

R changeState(@RequestBody Order order) {

orderDao.changeState(order);

return new R().setCode(2000).setMsg(HttpMsg.UPDATE_ORDER_OK);

@DeleteMapping(“/delete”)

R delete(@RequestParam(“id”) int id) {

R r = new R();

int ans = orderService.delete(id);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.DELETE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.DELETE_USER_FAILED);

购物车管理控制层:

@RestController

@RequestMapping(“cart”)

public class CartController {

@Autowired

CartService cartService;

@Autowired

OrderService orderService;

@Autowired

CartDao dao;

@Autowired

FlowersDao flowersDao;

@RequestMapping(“/test”)

R test() {

R r = new R();

return r.setCode(4000).setMsg(Constant.IMG_PATH).setData(dao.findAll());

@RequestMapping(“/queryByAccount”)

R queryByAccount(@RequestParam(“account”) String account) {

R r = new R();

if (StringUtil.isEmpty(account)) {

return r.setCode(4000).setMsg(HttpMsg.INVALID_PARAM);

List carts = cartService.queryByAccount(account);

for (Cart cart : carts) {

float price = flowersDao.queryPrice(cart.getFid());

cart.setPrice(cart.getAmount() * price);

return r.setCode(2000).setData(carts);

@RequestMapping(“/find”)

R find(@RequestParam(“page”) int page, @RequestParam(“searchKey”) String searchKey, @RequestParam(“account”) String account) {

R r = new R();

Map<String, Object> map = new HashMap<>();

List carts = cartService.find(searchKey, account);

if (carts == null) {

return r.setCode(2000);

List items = carts.size() >= page * Constant.PAGE_SIZE ?

carts.subList((page - 1) * Constant.PAGE_SIZE, page * Constant.PAGE_SIZE)

: carts.subList((page - 1) * Constant.PAGE_SIZE, carts.size());

int len = carts.size() % Constant.PAGE_SIZE == 0 ? carts.size() / Constant.PAGE_SIZE

: (carts.size() / Constant.PAGE_SIZE + 1);

map.put(“items”, items);

map.put(“len”, len);

return r.setCode(2000).setData(map);

@RequestMapping(“/buy”)

R buy(@RequestParam(“account”) String account) {

R r = new R();

// 查该用户的购物车

List carts = (List) queryByAccount(account).getData();

for (Cart cart : carts) {

// 增加订单数据

orderService.add(cart);

// 删除购物车数据

cartService.delete(cart.getId());

return r.setCode(2000).setMsg(HttpMsg.BUY_OK);

@RequestMapping(“/create”)

R create(@RequestBody Cart cart) {

R r = new R();

int ans = cartService.add(cart);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.ADD_CART_OK);

return r.setCode(4000).setMsg(HttpMsg.ADD_CART_FAILED);

@RequestMapping(“/update”)

R update(@RequestBody Cart cart) {

R r = new R();

int ans = cartService.update(cart);

if (ans >= 0) {

return r.setCode(2000).setMsg(HttpMsg.UPDATE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.UPDATE_USER_FAILED);

@DeleteMapping(“/delete”)

R delete(@RequestParam(“id”) int id) {

R r = new R();

int ans = cartService.delete(id);

if (ans == 1) {

return r.setCode(2000).setMsg(HttpMsg.DELETE_USER_OK);

return r.setCode(4000).setMsg(HttpMsg.DELETE_USER_FAILED);


基于javaweb的水果生鲜商城系统(java+springboot+mybatis+vue+mysql)相关推荐

  1. 基于javaweb的在线点餐系统(java+springboot+mybatis+vue+mysql+redis)

    基于javaweb的在线点餐系统(java+springboot+mybatis+vue+mysql+redis) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:e ...

  2. 基于javaweb的水果蔬菜商城系统(java+ssm+jsp+mysql)

    基于javaweb的水果蔬菜商城系统(java+ssm+jsp+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/st ...

  3. 基于javaweb的音乐专辑商城系统(java+ssm+jsp+jquery+mysql)

    基于javaweb的音乐专辑商城系统(java+ssm+jsp+jquery+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myecl ...

  4. 基于javaweb的二手交易商城系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的二手交易商城系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...

  5. 基于javaweb的在线甜品商城系统(java+ssm+jsp+javascript+mysql)

    基于javaweb的在线甜品商城系统(java+ssm+jsp+javascript+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/m ...

  6. 基于javaweb的茶叶售卖商城系统(java+ssm+jsp+easyui+mysql)

    基于javaweb的茶叶售卖商城系统(java+ssm+jsp+easyui+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myecl ...

  7. Java项目:在线服装销售商城系统(java+SpringBoot+Maven+Vue+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclis ...

  8. 基于javaweb的生鲜商城系统(java+jsp+bootstrap+servlet+mysql)

    基于javaweb的生鲜商城系统(java+jsp+bootstrap+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...

  9. 基于javaweb+jsp的网上商城系统(java+jsp+servlet+mysql+ajax)

    基于javaweb+jsp的网上商城系统(java+jsp+servlet+mysql+ajax) 一.项目简述(+需求文档+PPT) 功能: 主页显示热销商品:所有商品展示,可进行商品搜索:点 击商 ...

最新文章

  1. 史上最全 Python Re 模块讲解(一)
  2. 家用电脑配置_家用电脑无需太高配置,不要听电脑店瞎忽悠,2500元机子够用了!...
  3. python socket多线程 获取朋友列表_python socket多线程通讯实例分析(聊天室)
  4. c语言指针++_C ++此指针| 查找输出程序| 套装1
  5. PHP制作登录异常ip检测功能实例
  6. 线性代数【1】线性代数是什么【2】行列式计算【3】行列式性质【特殊行列计算】【4】克莱姆法则
  7. EJB 开发环境与入门实例
  8. 一个js编写全选、弹出对话框、ajax-json的案例
  9. linux扫描硬盘故障命令
  10. Vijos P1911 珠心算测验【序列处理】
  11. linux安装perl模块
  12. 运维之道 | Linux常用网络命令
  13. 电商产品设计:购物车管理
  14. linux虚拟机ping不通外网问题
  15. 计算机键盘功能教案,键盘认识教案
  16. ICommand、ITool中调用要素闪烁/定位的方法
  17. STM32CubeMX系列|DS18B20温度传感器
  18. linux请求超时 ping_linux下ping命令使用详解
  19. 用了python之后笔记本卡了_用chrome运行的Jupyter笔记本在服务器res上卡住了
  20. 加载MSCOMCTL.OCX错误处理的几个关键

热门文章

  1. 达人评测i5 1340p和i5 12500h差距 酷睿i51340p和i5 12500h选哪个
  2. 致毕业生:那些年我们错过的“BAT” 1
  3. 专接本数学第一章知识梳理(1)
  4. Linux系统简单介绍
  5. 什么计算机玩游戏好,电脑玩游戏什么配置好
  6. vue 项目中使用three.js实现vr360度全景图片预览
  7. miix5 u盘安装linux,联想Miix510 U盘装系统xp教程
  8. 高值选择器和低值选择器原理及应用
  9. QuickJS 快速入门 (QuickJS QuickStart)
  10. 系列之2-神经网络中反向传播与梯度下降的基本概念