Java Web实训项目:西蒙购物网

本文档详细介绍了使用Java Web开发西蒙购物网的全过程,涵盖从需求分析到实现步骤,包括数据库设计、网站前后台功能、购物流程及单元测试。项目采用MVC模式,结合JSP、Servlet和DB,适合学习Web开发的同学实践。
摘要由CSDN通过智能技术生成

文章目录
一、网站功能需求
二、网站设计思路
(一)设计模式
(二)网站前台
(三)网站后台
1、用户管理
2、类别管理
3、商品管理
4、订单管理
(四)购物流程图
三、网站运行效果
四、网站实现步骤
(一)创建数据库与表
1、创建数据库
2、创建用户表
3、创建类别表
4、创建商品表
5、创建订单表
(二)创建Web项目
1、创建Web项目
2、修改Artifact名称
3、重新部署项目
4、编辑首页
5、启动应用,查看效果
(三)创建实体类
1、创建用户实体类
2、创建类别实体类
3、创建商品实体类
4、创建订单实体类
(四)创建数据库工具类
1、添加数据库驱动程序包
2、创建数据库连接管理类
3、测试数据库连接是否成功
4、数据库连接的常见错误
(1)数据库驱动程序名称错误
(2)未知数据库没错误
(3)数据库连接密码错误
(五)创建数据访问接口
1、创建用户数据访问接口
2、创建类别数据访问接口
3、创建商品数据访问接口
4、创建订单数据访问接口
(六)创建数据访问接口实现类
1、创建用户数据访问接口实现类
(1)编写插入用户方法
(2)编写按标识符删除用户方法
(3)编写更新用户方法
(4)编写按标识符查询用户方法
(5)编写按用户名查询用户方法
(6)编写查询全部用户方法
(7)编写登录方法
1_、对用户数据访问接口实现类做单元测试
(1)编写测试登录方法
(2)编写按标识符查询用户方法
(3)编写按用户名查询用户方法
(4)编写查询全部用户方法
(5)编写测试插入用户方法
(6)编写测试更新用户方法
(7)编写测试按标识符删除用户方法
思考题
2、创建类别数据访问接口实现类
(1)编写插入类别方法
(2)编写按标识符删除类别方法
(3)编写更新类别方法
(4)编写按标识符查询类别方法
(5)编写查询全部类别方法
2_、对类别数据访问接口对象做单元测试
(1)编写测试按标识符查询类别方法
(2)编写测试查询全部类别方法
(3)编写测试插入类别方法
(4)编写测试更新类别方法
(5)编写测试删除类别方法
3、编写商品数据访问接口实现类
(1)编写插入商品方法
(2)编写按标识符删除商品方法
(3)编写更新商品方法
(4)编写按标识符查询商品方法
(5)编写按类别标识符查询商品方法
(6)编写查询全部商品方法
3_、对商品数据访问接口对象做单元测试
(1)编写按标识符查询商品方法
(2)编写测试按类别标识符查询商品方法
(3)编写测试查询全部商品方法
(4)编写测试插入商品方法
(5)编写测试更新商品方法
(6)编写测试删除商品方法
4、创建订单数据访问接口实现类
(1)编写插入订单方法
(2)编写按标识符删除订单方法
(3)编写更新订单方法
(4)编写按标识符查询订单方法
(5)编写查询最后一个订单方法
(6)编写查询全部订单方法
4_、对订单数据访问接口对象做单元测试
(1)编写按标识符查询订单方法
课堂练习:编写方法测试OrderDaoImpl其余方法
(七)创建数据访问服务类
1、创建用户服务类
2、创建类别服务类
3、创建商品服务类
4、创建订单服务类
课堂练习:测试服务类


本项目采用MVC模式进行开发,整合JSP + Servlet + DB(DAO),同学们可以通过本次实战,了解Web开发的一般流程。

一、网站功能需求
1、只有注册用户成功登录后才可查看商品类别,查看商品,选购商品,生成订单、查看订单
2、只有管理员才有权限进入购物网后台管理(用户管理 + 类别管理 + 商品管理 + 订单管理)

二、网站设计思路
(一)设计模式
分层架构:展现层(JSP)<——>控制层(Controller)<——>业务层(Service)<——>数据访问层(Dao)<——>数据库(DB)

(二)网站前台
登录——显示商品类别——显示某类商品信息——查看购物车——生成订单——支付
注册<——>登录
(三)网站后台
1、用户管理
查看用户
添加用户
修改用户
删除用户
2、类别管理
查看类别
添加类别
修改类别
删除类别
3、商品管理
查看商品
添加商品
修改商品
删除商品
4、订单管理
查看订单
删除订单
(四)购物流程图
管理员登录成功,进入后台管理
普通用户登录成功,进入前台购物

三、网站运行效果
操作演示录屏

四、网站实现步骤
(一)创建数据库与表
1、创建数据库
数据库 - simonshop

2、创建用户表
创建用户表结构 - t_user

CREATE TABLE `t_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(20) NOT NULL,
  `password` varchar(20) DEFAULT NULL,
  `telephone` varchar(11) DEFAULT NULL,
  `register_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `popedom` int(11) DEFAULT NULL COMMENT '0:管理员;1:普通用户',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
1
2
3
4
5
6
7
8
9
在用户表里插入记录

INSERT INTO `t_user` VALUES ('1', 'admin', '12345', '15734345678', '2021-12-02 08:40:35', '0');
INSERT INTO `t_user` VALUES ('2', '郑晓红', '11111', '13956567889', '2022-12-20 09:51:43', '1');
INSERT INTO `t_user` VALUES ('3', '温志军', '22222', '13956678907', '2022-12-20 09:52:36', '1');
INSERT INTO `t_user` VALUES ('4', '涂文艳', '33333', '15890905678', '2022-12-05 09:52:56', '1');
1
2
3
4
查看用户表

3、创建类别表
创建类别表结构 - t_category

CREATE TABLE `t_category` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '商品类别标识符',
  `name` varchar(100) NOT NULL COMMENT '商品类别名称',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
1
2
3
4
5
在类别表里插入记录

INSERT INTO `t_category` VALUES ('1', '家用电器');
INSERT INTO `t_category` VALUES ('2', '床上用品');
INSERT INTO `t_category` VALUES ('3', '文具用品');
INSERT INTO `t_category` VALUES ('4', '休闲食品');
1
2
3
4
查看类别表记录

4、创建商品表
创建商品表结构 - t_product

CREATE TABLE `t_product` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '商品标识符',
  `name` varchar(200) NOT NULL COMMENT '商品名称',
  `price` double DEFAULT NULL COMMENT '商品单价',
  `add_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `category_id` int(11) DEFAULT NULL COMMENT '商品类别标识符',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8;
1
2
3
4
5
6
7
8
在商品表里插入记录

INSERT INTO `t_product` VALUES ('1', '容声电冰箱', '2000', '2016-12-20 09:54:41', '1');
INSERT INTO `t_product` VALUES ('2', '松下电视', '5000', '2016-12-20 09:54:35', '1');
INSERT INTO `t_product` VALUES ('3', '红岩墨水', '3', '2016-12-20 09:56:05', '3');
INSERT INTO `t_product` VALUES ('4', '海尔洗衣机', '1000', '2016-11-30 08:58:09', '1');
INSERT INTO `t_product` VALUES ('5', '新宇电饭煲', '1200', '2016-12-20 09:55:11', '1');
INSERT INTO `t_product` VALUES ('6', '英雄微波炉', '600', '2016-12-20 09:55:39', '1');
INSERT INTO `t_product` VALUES ('7', '红双喜席梦思', '700', '2016-11-28 08:59:38', '2');
INSERT INTO `t_product` VALUES ('8', '旺仔牛奶糖', '24.4', '2016-12-20 10:00:11', '4');
INSERT INTO `t_product` VALUES ('9', '西蒙枕头', '100', '2016-12-20 09:56:57', '2');
INSERT INTO `t_product` VALUES ('10', '甜甜毛毯', '400', '2016-12-20 09:57:26', '2');
INSERT INTO `t_product` VALUES ('11', '永久钢笔', '50', '2016-12-20 09:57:30', '3');
INSERT INTO `t_product` VALUES ('12', '硬面抄笔记本', '5', '2016-12-20 09:57:53', '3');
INSERT INTO `t_product` VALUES ('13', '晨光橡皮擦', '0.5', '2016-11-30 09:02:40', '3');
INSERT INTO `t_product` VALUES ('14', '美的空调', '3000', '2016-11-03 09:03:02', '1');
INSERT INTO `t_product` VALUES ('15', '迷你深海鱼肠', '14.4', '2016-12-02 10:01:14', '4');
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
查看商品表记录

5、创建订单表
创建订单表结构 - t_order

CREATE TABLE `t_order` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '订单标识符',
  `username` varchar(20) DEFAULT NULL COMMENT '用户名',
  `telephone` varchar(11) DEFAULT NULL COMMENT '电话号码',
  `total_price` double DEFAULT NULL COMMENT '总金额',
  `delivery_address` varchar(50) DEFAULT NULL COMMENT '送货地址',
  `order_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '下单时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
1
2
3
4
5
6
7
8
9
在订单表里插入记录

INSERT INTO `t_order` VALUES ('1', '郑晓红', '13956567889', '2000', '泸职院大数据学院', '2023-05-25 17:12:36');
INSERT INTO `t_order` VALUES ('2', '温志军', '13956678907', '1000', '泸职院机械工程学院', '2023-05-26 17:12:17');
1
2
查看订单表记录

(二)创建Web项目
1、创建Web项目
创建Java Enterprise项目,添加Web Application功能

设置项目名称与保存位置

单击【Finish】按钮

2、修改Artifact名称
将Artifact名称改为simonshop

3、重新部署项目
先移除,后添加,重新部署项目

切换到【Server】选项卡
4、编辑首页
首页 - index.jsp

<%@ page import="java.util.Date" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <title>首页</title>
    </head>
    <body>
        <h1 style="color: blue; text-align: center">Java Web实训项目:西蒙购物网</h1>
        <h3 style="text-align: center"><%= new Date()%></h3>
        <p style="text-align: center"><a href="login.jsp">跳转到登录页面</a></p>
    </body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值