项目介绍:系统共分为管理员、用户。管理员负责网站和后台所有数据的维护,包括动态的水果信息发布上架、管理用户、订单等。用户则是查看水果、完成购买水果的需求等。主要的功能模块包括了用户在线浏览各种水果信息,可以根据水果的树形分类结构去筛选出对应的水果信息。另外,还实现了购物车功能、收藏功能和评价功能。能够将水果加入购物车和收藏栏,方便用户进行操作使用。订单功能模块包括了订单的收货确认和售后评价功能。
项目类型:SSM源码
用户类型:2个角色(管理员+用户)
主要技术:SSM+MySQL
开发工具:Eclipse/Idea均可使用
数据库:MySQL
数据库表:12张
🍅演示视频在底部🍅
🍅文末获取联系🍅
目录
01用户端(前台)
1.1网站首页
1.2水果信息详情
1.3用户购物车
1.4用户订单确认
1.5个人订单查看
1.6收藏夹
1.7订单评论
1.8收件地址管理模块
02管理员端(后台)
2.1用户管理模块
2.2水果类型管理模块
2.3水果信息管理模块
2.4订单管理模块
2.5快递管理模块
2.6评论维护模块
03项目结构
04数据库设计
05演示视频
【原创】基于SSM的水果商城系统
-- ----------------------------
-- Table structure for address
-- ----------------------------
DROP TABLE IF EXISTS `address`;
CREATE TABLE `address` (
`addressID` int(12) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`userId` int(12) NOT NULL COMMENT '用户ID',
`detailAddr` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '详细地址',
`conName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '收件人',
`conTel` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '',
PRIMARY KEY (`addressID`) USING BTREE,
INDEX `addressID`(`addressID`) USING BTREE,
INDEX `userId`(`userId`) USING BTREE,
CONSTRAINT `address_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `user` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 19 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for admin
-- ----------------------------
DROP TABLE IF EXISTS `admin`;
CREATE TABLE `admin` (
`adminId` int(12) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`adminName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '管理员姓名',
`password` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',
PRIMARY KEY (`adminId`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for category
-- ----------------------------
DROP TABLE IF EXISTS `category`;
CREATE TABLE `category` (
`cateId` int(12) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`pid` int(11) NULL DEFAULT NULL COMMENT '上级分类',
`cateName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '分类名称',
PRIMARY KEY (`cateId`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 27 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for collection
-- ----------------------------
DROP TABLE IF EXISTS `collection`;
CREATE TABLE `collection` (
`userId` int(12) NOT NULL COMMENT '用户ID',
`goodsId` int(12) NOT NULL COMMENT '商品ID',
`collectTime` datetime NOT NULL COMMENT '收藏时间',
PRIMARY KEY (`userId`, `goodsId`) USING BTREE,
INDEX `collection_ibfk_2`(`goodsId`) USING BTREE,
CONSTRAINT `collection_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `user` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `collection_ibfk_2` FOREIGN KEY (`goodsId`) REFERENCES `goods` (`goodsId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for comment
-- ----------------------------
DROP TABLE IF EXISTS `comment`;
CREATE TABLE `comment` (
`commentId` int(12) NOT NULL AUTO_INCREMENT COMMENT '评论ID',
`userId` int(12) NOT NULL COMMENT '用户ID',
`goodsId` int(12) NOT NULL COMMENT '商品ID',
`point` int(8) NOT NULL COMMENT '评分',
`content` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '内容',
`commentTime` datetime NOT NULL COMMENT '评论时间',
PRIMARY KEY (`commentId`) USING BTREE,
INDEX `userId`(`userId`) USING BTREE,
INDEX `goodsId`(`goodsId`) USING BTREE,
CONSTRAINT `comment_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `user` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `comment_ibfk_2` FOREIGN KEY (`goodsId`) REFERENCES `goods` (`goodsId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for deliver
-- ----------------------------
DROP TABLE IF EXISTS `deliver`;
CREATE TABLE `deliver` (
`deliverid` int(12) NOT NULL AUTO_INCREMENT COMMENT '主键',
`name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '名称',
PRIMARY KEY (`deliverid`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 22 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for goods
-- ----------------------------
DROP TABLE IF EXISTS `goods`;
CREATE TABLE `goods` (
`goodsId` int(12) NOT NULL AUTO_INCREMENT COMMENT '商品ID',
`goodsName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '商品名称',
`price` int(12) NOT NULL COMMENT '价格',
`num` int(12) NOT NULL COMMENT '库存',
`upTime` datetime NOT NULL COMMENT '更新时间',
`category` int(12) NOT NULL COMMENT '分类ID',
`detailCate` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '分类详情',
`description` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '描述',
`type` int(12) NULL DEFAULT NULL COMMENT '类型',
`status` int(12) NULL DEFAULT NULL COMMENT '状态',
PRIMARY KEY (`goodsId`) USING BTREE,
INDEX `category`(`category`) USING BTREE,
CONSTRAINT `goods_ibfk_2` FOREIGN KEY (`category`) REFERENCES `category` (`cateId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 184 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for imagepath
-- ----------------------------
DROP TABLE IF EXISTS `imagepath`;
CREATE TABLE `imagepath` (
`pathId` int(12) NOT NULL AUTO_INCREMENT COMMENT '主键',
`goodId` int(12) NOT NULL COMMENT '商品ID',
`path` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '路径',
PRIMARY KEY (`pathId`) USING BTREE,
INDEX `goodid`(`goodId`) USING BTREE,
CONSTRAINT `imagepath_ibfk_1` FOREIGN KEY (`goodId`) REFERENCES `goods` (`goodsId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 53 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for indent
-- ----------------------------
DROP TABLE IF EXISTS `indent`;
CREATE TABLE `indent` (
`orderId` int(12) NOT NULL AUTO_INCREMENT COMMENT '订单ID',
`userId` int(12) NOT NULL COMMENT '商品ID',
`orderTime` datetime NOT NULL COMMENT '订单时间',
`newPrice` float NOT NULL COMMENT '总价',
`deliverId` int(11) NULL DEFAULT NULL COMMENT '快递ID',
PRIMARY KEY (`orderId`) USING BTREE,
INDEX `userId`(`userId`) USING BTREE,
INDEX `orderGoods`(`orderTime`) USING BTREE,
INDEX `addressId`(`addressId`) USING BTREE,
CONSTRAINT `indent_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `user` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `indent_ibfk_2` FOREIGN KEY (`addressId`) REFERENCES `address` (`addressID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for orderitem
-- ----------------------------
DROP TABLE IF EXISTS `orderitem`;
CREATE TABLE `orderitem` (
`itemId` int(12) NOT NULL AUTO_INCREMENT COMMENT '主键',
`orderId` int(12) NOT NULL COMMENT '订单ID',
`goodsId` int(12) NOT NULL COMMENT '商品ID',
`num` int(12) NOT NULL COMMENT '数量',
PRIMARY KEY (`itemId`) USING BTREE,
INDEX `orderId`(`orderId`) USING BTREE,
INDEX `goodsId`(`goodsId`) USING BTREE,
CONSTRAINT `orderitem_ibfk_1` FOREIGN KEY (`orderId`) REFERENCES `indent` (`orderId`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `orderitem_ibfk_2` FOREIGN KEY (`goodsId`) REFERENCES `goods` (`goodsId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for shopcart
-- ----------------------------
DROP TABLE IF EXISTS `shopcart`;
CREATE TABLE `shopcart` (
`userId` int(12) NOT NULL COMMENT '用户ID',
`goodsid` int(12) NOT NULL COMMENT '商品ID',
`cateDate` datetime NOT NULL COMMENT '日期',
`goodsNum` int(12) NOT NULL COMMENT '商品数量',
PRIMARY KEY (`userId`, `goodsid`) USING BTREE,
INDEX `userId`(`userId`) USING BTREE,
INDEX `goodsid`(`goodsid`) USING BTREE,
CONSTRAINT `shopcart_ibfk_1` FOREIGN KEY (`userId`) REFERENCES `user` (`userId`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `shopcart_ibfk_2` FOREIGN KEY (`goodsid`) REFERENCES `goods` (`goodsId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`userId` int(12) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`username` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名',
`password` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',
`regTime` datetime NOT NULL COMMENT '注册时间',
`email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '邮箱',
`telephone` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '电话',
`status` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '状态',
PRIMARY KEY (`userId`) USING BTREE,
INDEX `userId`(`userId`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
SET FOREIGN_KEY_CHECKS = 1;