Java经典课程设计--在线蛋糕商城销售网站项目【Sprin

这是我参与11月更文挑战的第17天,活动详情查看:2021最后一次更文挑战

前言:

人类将步入信息时代,网络越来越强烈地介入我们的生活,越来越 贴近我们。这是一个知识经济的时代,信息正在以前所未有的速度膨胀 和爆炸,未来的世界是网络的世界,要让我国在这个信息世界中跟上时 代的步伐,作为 21 世纪主力军的我们,必然要能更快地适应这个高科技 的社会,要具有从外界迅速、及时获取有效科学信息的能力,具有传播 科学信息的能力,这就是科学素质。而网络恰恰适应了这个要求。因此, 网络销售及电子商务应运而生,由此引出了网络蛋糕销售系统,网络蛋 糕销售系统的主要目的是让全国各地的人们在家都能买到自己想吃的蛋 糕。传统的蛋糕销售主要是以店面为基础,要选择合适的门面房,浪费 钱财,销量也不容乐观。而网络蛋糕销售系统可以不用担心门面房问题, 消费群体范围也扩展了。可以大大节省开支,还增加了营业额。它在引 导上的直接性和自身所具有的独到特点,易被接受和采纳,是一种实用 性强的软件工具。

主要功能说明

用户角色: 包含以下功能:查看所有蛋糕,用户登录和注册,查看蛋糕详情,提交订单,查看我的订单,查看我的购物车,确认收货,评价等功能。

管理员: 管理员登录,蛋糕分类管理,蛋糕管理,用户管理,订单管理。

功能截图:

登陆注册:

首页功能:蛋糕商品浏览 购买 加入购物车等


主要代码实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
java复制代码package com.smzy.controller;

import com.smzy.pojo.User;
import com.smzy.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import javax.servlet.http.HttpSession;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Controller
@RequestMapping("/admin")
public class UserController {
@Autowired
private UserService userService;

@RequestMapping("/listUser")
public String findAll(Model model) {
List<User> users = userService.findAll();
model.addAttribute("users",users);
return "admin/listUser";
}
@RequestMapping("/editUser")
public String edit(Model model ,Integer id) {
User user = userService.get(id);
model.addAttribute("user",user);
return "admin/editUser";
}

@RequestMapping("/updateUser")
public String update(Integer id,String password) {
userService.updatePassword(id,password);
return "redirect:listUser";
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
java复制代码package com.smzy.service;

import com.smzy.pojo.User;

import java.util.List;

public interface UserService {

List<User> findAll();

User get(Integer id);

void updatePassword (Integer id ,String password);

User get(String name,String password);

boolean isExist(String name);

void add(User user);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
xml复制代码<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">

<context:component-scan base-package="com.smzy.controller"/>
<mvc:annotation-driven/>
<mvc:default-servlet-handler/>

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/views/"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>

<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/*"/>
<bean class="com.smzy.interceptor.LoginInterceptor"/>
</mvc:interceptor>
<mvc:interceptor>
<mvc:mapping path="/*"/>
<bean class="com.smzy.interceptor.OtherInterceptor"/>
</mvc:interceptor>

</mvc:interceptors>
</beans>

数据库表设计:

**数据库名: **ssm_dangao_shop

**文档版本: **V1.0.0

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

表admin

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 管理员id
2 name varchar 255 0 N N 管理员用户名
3 password varchar 255 0 N N 管理员密码

表category

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引ID
2 name varchar 255 0 N N 分类名
3 img_url varchar 255 0 N N 分类详情图地址

表orders

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 order_code varchar 255 0 N N 订单号
3 address varchar 255 0 N N 收货地址
4 receiver varchar 255 0 N N 收货人姓名
5 phone varchar 255 0 N N 手机号码
6 user_message varchar 255 0 N N 用户备注的信息
7 create_date datetime 19 0 N N 订单创建时间
8 pay_date datetime 19 0 Y N 订单支付时间
9 delivery_date datetime 19 0 Y N 发货日期
10 confirm_date datetime 19 0 Y N 确认收货日期
11 user_id int 10 0 Y N 对应的用户id
12 status varchar 255 0 N N 订单状态

表order_item

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 product_id int 10 0 N N 对应产品id
3 order_id int 10 0 Y N 对应订单id
4 user_id int 10 0 N N 对应用户id
5 number int 10 0 Y N 对应产品购买的数量

表product

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 name varchar 255 0 N N 产品的名称
3 sub_title varchar 255 0 Y N 小标题
4 price float 13 0 Y N 价格
5 sale int 10 0 Y N 销量
6 stock int 10 0 Y N 库存
7 description varchar 2000 0 N N 商品描述
8 brand varchar 255 0 N N 品牌
9 category_id int 10 0 Y N 对应的分类id

表product_image

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 product_id int 10 0 Y N 产品ID

表property

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 name varchar 255 0 Y N 属性名称
3 category_id int 10 0 N N 对应的分类id

表property_value

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 product_id int 10 0 N N 对应产品id
3 property_id int 10 0 N N 对应属性id
4 value varchar 255 0 Y N 具体的属性值

表review

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 content varchar 4000 0 Y N 评价内容
3 user_id int 10 0 N N 对应的用户id
4 product_id int 10 0 N N 对应的产品id
5 createDate datetime 19 0 Y N 评价时间

表user

编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明
1 id int 10 0 N Y 唯一索引id
2 name varchar 255 0 N N 用户名称
3 password varchar 255 0 N N 用户密码
4 email varchar 255 0 N N 邮箱
5 registTime timestamp 19 0 N N CURRENT_TIMESTAMP 注册时间

大家点赞、收藏、关注、评论啦 、
打卡 文章 更新 104/ 365天

本文转载自: 掘金

开发者博客 – 和开发相关的 这里全都有

0%