SpringBoot水果商城后台管理系统(文末附源码)

本文详细介绍了基于SpringBoot的水果商城后台管理系统,包括采用的技术栈(HTML+CSS+JS+jsp+SpringBoot+Mybatis+Mysql)、管理员功能(登录、强制登录、退出)以及水果管理功能(分页、删除、修改、图片上传)。同时展示了数据库设计和项目的依赖配置。
摘要由CSDN通过智能技术生成

===========================================================================

(1)《SpringBoot水果商城后台管理系统》该项目采用技术:

《SpringBoot水果商城后台管理系统》该项目采用的技术实现如下:HTML+CSS+JavaScript+jsp+SpringBoot+Mybatis+Mysql

  • 后台使用SpringBoot+mybatis框架

  • 前端采用jsp+js+css等界面非常的美观大方

  • mysql数据库+tomcat服务器

(2)管理员功能介绍:

1、管理员登录(如果验证码错误报:验证码有误,密码或账户错误报账户或密码错误)

2、强制登录,如果管理员没有登录,不能进入系统(显示管理员名字为登录成功)

3、退出登录(注销Session的形式进行退出登录)

(3)水果功能介绍:

1、分页展示所有

2、删除

3、批量删除

4、全选

6、修改(先进行数据回显之后进行修改)

7、图片上传和图片在页面显示功能

二、数据库设计

==========================================================================

(1)数据库创建

– 创建员工表

create table admin(

id int primary key auto_increment,

username varchar(20) not null,

password varchar(20) not null

)

– 添加管理员数据

insert into admin values(null,‘王恒杰’,‘123456’);

insert into admin values(null,‘杨福君’,‘whj63135’);

insert into admin values(null,‘邓正武’,‘675437’);

– 查询管理员

select *from admin;

– 创建水果表

create table fruit(

id int primary key auto_increment,

image varchar(30) not null,

name varchar(20) not null,

price double not null,

month int not null,

createTime date

);

– 查询水果表

select * from fruit;

– 添加水果信息

insert into fruit values(null,‘/img.jpg’,‘苹果’,‘5.00’,5,NOW());

(2)数据库设计文档

数据库名: fruitmall

文档版本: V1.0.0

文档描述: 数据库表设计描述

| 表名 | 说明 |

| — | — |

| admin | 管理员 |

| fruit | 水果管理 |

表名: admin

说明: 管理员

| 序号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |

| — | — | — | — | — | — | — | — | — |

| 1 | id | int | 10 | 0 | N | Y | | |

| 2 | username | varchar | 20 | 0 | N | N | | |

| 3 | password | varchar | 20 | 0 | N | N | | |

表名: fruit

说明: 水果

| 序号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |

| — | — | — | — | — | — | — | — | — |

| 1 | id | int | 10 | 0 | N | Y | | |

| 2 | image | varchar | 30 | 0 | N | N | | |

| 3 | name | varchar | 20 | 0 | N | N | | |

| 4 | price | double | 23 | 0 | N | N | | |

| 5 | month | int | 10 | 0 | N | N | | |

| 6 | createTime | date | 10 | 0 | Y | N | | |

三、导入项目相关依赖和配置application.yml

===============================================================================================

(1)导入相关依赖

org.springframework.boot

spring-boot-starter-parent

2.2.5.RELEASE

org.springframework.boot

spring-boot-starter-web

mysql

mysql-connector-java

8.0.16

org.mybatis.spring.boot

mybatis-spring-boot-starter

2.1.2

com.alibaba

druid

1.1.12

javax.servlet

jstl

1.2

org.springframework.boot

spring-boot-starter-test

org.springframework.boot

spring-boot-starter-aop

org.apache.tomcat.embed

tomcat-embed-jasper

(2)配置application.yml

server:

port: 8080 #端口号

servlet:

context-path: /fruitmall #水果商城

jsp:

init-parameters:

development: true #开启jsp页面的调试模式

spring:

mvc:

view:

prefix: / #前缀

suffix: .jsp #后缀

数据源

datasource:

type: com.alibaba.druid.pool.DruidDataSource #数据源类型

driver-class-name: com.mysql.cj.jdbc.Driver #加载驱动

url: jdbc:mysql://localhost:3306/fruitmall?useSSL=false&serverTimezone=UTC

username: root

password: root

mybatis:

mapper-locations: classpath:com/tjcu/mapper/*Mapper.xml #指定mapper文件所在的位置,其中classpath必须和mapper-locations分开

type-aliases-package: com.tjcu.entity

四、管理员核心功能

============================================================================

1、前端

<%@page isELIgnored=“false” contentType=“text/html; harset=utf-8” pageEncoding=“UTF-8” %>

<%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>

login

欢迎进入水果管理系统V1.0


验证码:

换一张

${requestScope.msg}

Fruit@136.com

2、控制层

package com.tjcu.controller;

import com.tjcu.entity.Admin;

import com.tjcu.service.AdminService;

import com.tjcu.utils.VerifyCodeUtils;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.ServletOutputStream;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

import java.io.IOException;

import static javax.swing.text.html.CSS.getAttribute;

/**

  • @author 王恒杰

  • @date 2021/11/28 16:22

  • @Description:

*/

@Controller

@RequestMapping(“admin”)

public class AdminAction {

@Autowired

private AdminService adminService;

@RequestMapping(“login”)

public String login(Admin admin, HttpServletRequest request,String adminCode){

//1.比较验证是否一致

HttpSession session = request.getSession();

String code = session.getAttribute(“code”).toString();

if(code.equals(adminCode)){

Admin login = adminService.login(admin.getUsername(), admin.getPassword());

if(login!=null){

request.setAttribute(“admin”,login);

session.setAttribute(“admin”,login);

return “forward:/fruit/showAll?pageNumber=1”;

}else {

request.setAttribute(“msg”,“用户名或者密码输入错误”);

return “login”;

}

}else {

request.setAttribute(“msg”,“验证码输入错误”);

return “login”;

}

}

/**

  • 用来生成验证码方法

*/

@RequestMapping(“generateImageCode”)

public void generateImageCode(HttpSession session, HttpServletResponse response) throws IOException {

//1.生成随机字符串

String code = VerifyCodeUtils.generateVerifyCode(4);

//2.保存随机字符串到Session中

session.setAttribute(“code”,code);

//3.将随机字符串生成图片

//4.通过response响应图片

response.setContentType(“image/png”);//指定响应类型

ServletOutputStream os = response.getOutputStream();

VerifyCodeUtils.outputImage(80,30,os,code);

}

@RequestMapping(“cancel”)

public String cancel(HttpServletRequest request){

request.getSession().invalidate();

request.setAttribute(“msg”,“管理员已经退出登录!”);

return “login”;

}

}

五、水果相关功能核心代码

===============================================================================

1、全选jquery实现

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

总结

面试建议是,一定要自信,敢于表达,面试的时候我们对知识的掌握有时候很难面面俱到,把自己的思路说出来,而不是直接告诉面试官自己不懂,这也是可以加分的。

以上就是蚂蚁技术四面和HR面试题目,以下最新总结的最全,范围包含最全MySQL、Spring、Redis、JVM等最全面试题和答案,仅用于参考

一份还热乎的蚂蚁金服面经(已拿Offer)面试流程4轮技术面+1轮HR

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
图片转存中…(img-ipSTUa2u-1711825452286)]

[外链图片转存中…(img-bDvrDhwy-1711825452287)]

[外链图片转存中…(img-BQ7EcP3y-1711825452287)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

总结

面试建议是,一定要自信,敢于表达,面试的时候我们对知识的掌握有时候很难面面俱到,把自己的思路说出来,而不是直接告诉面试官自己不懂,这也是可以加分的。

以上就是蚂蚁技术四面和HR面试题目,以下最新总结的最全,范围包含最全MySQL、Spring、Redis、JVM等最全面试题和答案,仅用于参考

[外链图片转存中…(img-kP0p0Xsa-1711825452287)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值