基于javaweb+mysql的springboot网上书城系统(java+springboot+vue+elementui+mybatis-plus+mysql)

基于javaweb+mysql的springboot网上书城系统(java+springboot+vue+elementui+mybatis-plus+mysql)

私信源码获取及调试交流

运行环境

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

开发工具

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

前端:WebStorm/VSCode/HBuilderX等均可

适用

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

功能说明

基于javaweb的SpringBoot网上书城系统(java+springboot+vue+elementui+mybatis-plus+mysql)

项目介绍

基于springboot vue前后端分离的网上书城

角色:管理员、用户

前台:包含 机器人客服回复 首页、登录、注册、全部商品、商品详情页、关于我们、我的收藏、购物车、订单结算页面、我的订单。 实现了商品的展示、商品分类查询、关键字搜索商品、商品详细信息展示、登录、注册、用户购物车、订单结算、用户订单、用户收藏列表以及错误处理功能

后台:实现了 销售额显示 订单显示 饼状图 曲线 轮播图管理 图书分类 图书管理 订单管理 角色管理 权限管理 细分到按钮 错误日志 登录日志 操作日志等功能

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 5.7/8.0版本均可; 5.是否Maven项目:是;

技术栈

后端:SpringBoot+Mybatis-plus+sa-token

前端:Vue+ELementUI

使用说明

项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;

书城首页展示:

图书列表展示:

购物车管理展示:

购物车展示页面:

后台管理首页展示:

订单管理展示页面:

轮播图展示页面:

后台图书列表展示:


@RequestMapping("index")

public String gotoIndex(HttpServletRequest request){

List<Snackinfo> HotSnackList = shopService.getHotSnack();

List<Snackinfo> newSnackList = shopService.getNewSnack();

List<Type> typeList = typeService.getall();

request.setAttribute("HotSnackList",HotSnackList);

request.setAttribute("newSnackList",newSnackList);

request.getSession().setAttribute("type", typeList);

System.out.println("00");

return "user/index";

//登录


@Autowired

private typeService typeService;

//登录login

@RequestMapping("adminLogin")

public String adminLogin(){

System.out.println("存储过程相加:"+accountMapper.selectNum(4, 6));

return "admin/adminLogin";

//登录

@RequestMapping("adminGoLogin")

public String adminGoLogin(HttpServletRequest request,Admin admin){

List<Admin> adminSelect = adminLoginService.adminLogin(admin);

if(adminSelect.size()==1){

request.getSession().setAttribute("adminName", adminSelect.get(0).getAdUsername());

private AccountMapper accountMapper;

@Autowired

private typeService typeService;

//登录login

@RequestMapping("adminLogin")

public String adminLogin(){

System.out.println("存储过程相加:"+accountMapper.selectNum(4, 6));

return "admin/adminLogin";

//登录

@RequestMapping("adminGoLogin")

public String adminGoLogin(HttpServletRequest request,Admin admin){

List<Admin> adminSelect = adminLoginService.adminLogin(admin);


return "user/myOrderSuccess";

//查看当前订单

@RequestMapping("userSucOrderLimit")

@ResponseBody

public DataTables userSucOrderLimit(HttpServletRequest request,int start,int length){

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

map.put("uId",request.getSession().getAttribute("frontuserId"));

map.put("pageStart",start);

map.put("pageSize",length);

PageHelp<DoMyOrder> pageHelp= userService.selectMySuccessOrderLimit(map);

DataTables datatable=new DataTables();

datatable.setData(pageHelp.getList());


public String updateSelectAdminOrderDetial(int dId){

return ResponseUtil.successToClient(adminOrderService.updateSelectAdminOrderDetial(dId));

//updateOrderDetial订单

@RequestMapping("updateOrderdetail")

@ResponseBody

public String updateOrderdetail(Orderdetail orderdetail){

return ResponseUtil.successToClient(adminOrderService.updateOrderdetail(orderdetail));

//删除OrderDetial

@RequestMapping("deleteOrderdetail")

@ResponseBody

public String deleteOrderdetail(int dId,String oId){

List<Orderdetail> orderdetailList = adminOrderService.selectOrderdetailByoId(oId);

if(orderdetailList.size()>=2){

return ResponseUtil.successToClient(dpm);

//确认付款

@RequestMapping("userOrderPayMoneyConfirm")

@ResponseBody

public String userOrderPayMoneyConfirm(HttpServletRequest request,Float payNumber,Float uMoney,String uPasword,String oId){

Userinfo userinfo = (Userinfo)request.getSession().getAttribute("exituser");

if(userinfo.getuPassword().equals(uPasword)){

sorderService.updateOrderByoId(oId);

userService.updateUserinfoBypay(userinfo.getuId(), uMoney-payNumber);

}else{

return ResponseUtil.errorToClient();


@RequestMapping("addUserRegister")

@ResponseBody

public AjaxResult addUserOne(Userinfo userinfo){

AjaxResult aj=new AjaxResult();

int rs = userService.addUserOne(userinfo);

aj.setTag(rs);

return aj;

//查登陆的用户

@RequestMapping("readUserinfo")

@ResponseBody

public AjaxResult readUserinfo(Userinfo userinfo,HttpServletRequest request){

AjaxResult aj=new AjaxResult();


@RequestMapping("adminLogin")

public String adminLogin(){

System.out.println("存储过程相加:"+accountMapper.selectNum(4, 6));

return "admin/adminLogin";

//登录

@RequestMapping("adminGoLogin")

public String adminGoLogin(HttpServletRequest request,Admin admin){

List<Admin> adminSelect = adminLoginService.adminLogin(admin);

if(adminSelect.size()==1){

request.getSession().setAttribute("adminName", adminSelect.get(0).getAdUsername());

request.getSession().setAttribute("adminId", adminSelect.get(0).getAdId());

List<Permission> allPer = adminLoginService.selectAllPermission();

List<Permission> userPer = adminLoginService.selectRolePermission(adminSelect.get(0).getRoleId());


return ResponseUtil.successToClient();

//删除订单

@RequestMapping("deleteMyOrder")

@ResponseBody

public String deleteAdminOrder(String oId){

return ResponseUtil.successToClient(adminOrderService.deleteAdminOrder(oId));

//跳转管理员信息

@RequestMapping("mainToAdminuser")

public String mainToAdminuser(){

return "admin/persionInfo/adminInfo";

//加载管理员信息

@RequestMapping("mainSelectAdminuser")

@ResponseBody


@RequestMapping("userAccountLimit")

@ResponseBody

public DataTables userAccountLimit(HttpServletRequest request,int start,int length){

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

map.put("uId",request.getSession().getAttribute("frontuserId"));

map.put("pageStart",start);

map.put("pageSize",length);

PageHelp<Account> pageHelp= userService.selectAccountLimit(map);

DataTables datatable=new DataTables();

datatable.setData(pageHelp.getList());

datatable.setRecordsFiltered(pageHelp.getRecord());

datatable.setRecordsTotal(pageHelp.getRecord());

return datatable;


map.put("pageStart",start);

map.put("pageSize",length);

PageHelp<DoSnack> pageHelp = shopService.selectOrderSnack(map);

DataTables datatable=new DataTables();

datatable.setData(pageHelp.getList());

datatable.setRecordsFiltered(pageHelp.getRecord());

datatable.setRecordsTotal(pageHelp.getRecord());

return datatable;

//type页面

@RequestMapping("puffingType")

public String puffing(HttpServletRequest request,DoSnackType doSnackType){

List<Snackinfo> TypeSnackList=shopService.selectPuffing(doSnackType.getType(),doSnackType.getSnackName());
//updateOrderDetial订单

@RequestMapping("updateOrderdetail")

@ResponseBody

public String updateOrderdetail(Orderdetail orderdetail){

return ResponseUtil.successToClient(adminOrderService.updateOrderdetail(orderdetail));

//删除OrderDetial

@RequestMapping("deleteOrderdetail")

@ResponseBody

public String deleteOrderdetail(int dId,String oId){

List<Orderdetail> orderdetailList = adminOrderService.selectOrderdetailByoId(oId);

if(orderdetailList.size()>=2){

adminOrderService.deleteOrderdetailBydId(dId);

return ResponseUtil.successToClient(1);


public String deleteAdminOrder(String oId){

return ResponseUtil.successToClient(adminOrderService.deleteAdminOrder(oId));

//跳转管理员信息

@RequestMapping("mainToAdminuser")

public String mainToAdminuser(){

return "admin/persionInfo/adminInfo";

//加载管理员信息

@RequestMapping("mainSelectAdminuser")

@ResponseBody

public String mainSelectAdminuser(HttpServletRequest request){

int adId =(int)request.getSession().getAttribute("adminId");

return ResponseUtil.successToClient(userService.selectAdminInfo(adId));

//更新管理员信息


DataTables datatable=new DataTables();

datatable.setData(pageHelp.getList());

datatable.setRecordsFiltered(pageHelp.getRecord());

datatable.setRecordsTotal(pageHelp.getRecord());

return datatable;

//type页面

@RequestMapping("puffingType")

public String puffing(HttpServletRequest request,DoSnackType doSnackType){

List<Snackinfo> TypeSnackList=shopService.selectPuffing(doSnackType.getType(),doSnackType.getSnackName());

Type type = typeService.getOne(doSnackType.getType());


public String gotoRegister(){

return "user/register";

//注册判断用户名存在

@RequestMapping("selectUserOne")

@ResponseBody

public AjaxResult getUserOne(Userinfo userinfo){

AjaxResult aj=new AjaxResult();

Userinfo rs = userService.selectUserOne(userinfo);

aj.setTag(rs);

return aj;

//注册

@RequestMapping("addUserRegister")

@ResponseBody


public String gotoUserLogin(){

return "user/userLogin";

@RequestMapping("userLoginPost")

public String gotoUserLogin(Userinfo userinfo,HttpServletRequest request){

Userinfo exituser =  shopService.userLogin(userinfo);

if(exituser ==null){

request.setAttribute("msg","用户名或密码错误");

return "user/userLogin";

request.getSession().setAttribute("exituser", exituser);

request.getSession().setAttribute("frontuser", exituser.getuUsername());

request.getSession().setAttribute("frontuserId", exituser.getuId());

outExcelOrderDetail.get(i).setOId("");

outExcelOrderDetail.get(i).setOName("");

outExcelOrderDetail.get(i).setOPhone("");

outExcelOrderDetail.get(i).setOAddress("");

outExcelOrderDetail.get(i).setMoney(outExcelOrderDetail.get(i).getMoney()+"元");

ExcelUtil2 excelUtil=new ExcelUtil2();

List<JSONObject> columns = new ArrayList<>();

columns.add(excelUtil.defaultGetColumn("订单号", "oId", 15 * 256, false, false));

columns.add(excelUtil.defaultGetColumn("收货人", "oName", 15 * 256, false, false));

columns.add(excelUtil.defaultGetColumn("电话", "oPhone", 15 * 256, false, false));

columns.add(excelUtil.defaultGetColumn("地址", "oAddress", 26 * 256, false, false));

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值