Java web 2022跟学尚硅谷书城项目完整开源分享

  • 项目介绍
    • 项目类图
    • sql建表和添加数据
    • 界面展示
      • 用户登录界面
      • 用户注册界面
      • 首页
      • 添加购物车
      • 我的购物车
      • 我的订单
    • 功能说明

项目介绍

跟学了2022尚硅谷书城项目,自己的代码完成了,现在将整个项目的过程做一个分享:
码云地址如下,需要的可以自行fork
书城项目源码
书城的跟学步骤每一篇博客都有详细记录可以看下:
书城跟学推文1
书城跟学推文2
书城跟学推文3

项目类图

根据项目类图,确定数据库各个实体之间的关系如下:

sql建表和添加数据

CREATE DATABASE bookdb CHAR SET utf8;
USE bookdb ;
CREATE TABLE `t_book` (`id` INT(11) NOT NULL AUTO_INCREMENT,`bookImg` VARCHAR(200) NOT NULL,`bookName` VARCHAR(20) DEFAULT NULL,`price` DOUBLE(10,2) DEFAULT NULL,`author` VARCHAR(20) DEFAULT NULL,`saleCount` INT(11) DEFAULT NULL,`bookCount` INT(11) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;/*Data for the table `t_book` */INSERT  INTO `t_book`(`id`,`bookImg`,`bookName`,`price`,`author`,`saleCount`,`bookCount`) VALUES (1,'cyuyanrumenjingdian.jpg','C语言入门经典',99.00,'亚历山大',8,197),(2,'santi.jpg','三体',48.95,'周杰伦',18,892),(3,'ailuntulingzhuan.jpg','艾伦图灵传',50.00,'刘若英',12,143),(4,'bainiangudu.jpg','百年孤独',40.00,'王力宏',3,98),(5,'biancheng.jpg','边城',30.00,'刘德华',2,99),(6,'jieyouzahuodian.jpg','解忧杂货店',27.00,'东野圭吾',5,100),(7,'zhongguozhexueshi.jpg','中国哲学史',45.00,'冯友兰',3,100),(8,'huranqiri.jpg','忽然七日',19.00,'劳伦',50,200),(9,'sudongpozhuan.jpg','苏东坡传',20.00,'林语堂',50,300),(10,'fusang.jpg','扶桑',20.00,'严歌岑',10,89),(11,'geihaizideshi.jpg','给孩子的诗',23.00,'北岛',5,99);CREATE TABLE `t_user` (`id` INT(11) NOT NULL AUTO_INCREMENT,`uname` VARCHAR(20) NOT NULL,`pwd` VARCHAR(32) NOT NULL,`email` VARCHAR(100) DEFAULT NULL,`role` INT(11) DEFAULT NULL,PRIMARY KEY (`id`),UNIQUE KEY `uname` (`uname`)
) ENGINE=INNODB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;/*Data for the table `t_user` */INSERT  INTO `t_user`(`id`,`uname`,`pwd`,`email`,`role`) VALUES (1,'lina','ok','lina@sina.com.cn',0),(2,'kate','ok','hello_kate@126.com',1),(3,'鸠摩智','ok','jiujiu@126.com',0),(4,'宝2021','ok','bao2021@sohu.com.cn',0),(5,'宝2022','123','bao2022@sohu.com.cn',0);/*Table structure for table `t_cart_item` */CREATE TABLE `t_cart_item` (`id` INT(11) NOT NULL AUTO_INCREMENT,`book` INT(11) DEFAULT NULL,`buyCount` INT(11) DEFAULT NULL,`userBean` INT(11) DEFAULT NULL,PRIMARY KEY (`id`),KEY `FK_cart_book` (`book`),KEY `FK_cart_user` (`userBean`),CONSTRAINT `FK_cart_book` FOREIGN KEY (`book`) REFERENCES `t_book` (`id`),CONSTRAINT `FK_cart_user` FOREIGN KEY (`userBean`) REFERENCES `t_user` (`id`)
) ENGINE=INNODB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8;/*Data for the table `t_cart_item` */INSERT  INTO `t_cart_item`(`id`,`book`,`buyCount`,`userBean`) VALUES (9,1,1,2),(10,5,1,1),(11,1,2,1),(12,2,13,1),(13,3,2,1),(14,4,1,1),(15,6,1,1),(16,7,1,1),(17,8,1,1),(18,9,1,1),(19,10,1,1),(20,11,4,1);/*Table structure for table `t_order` */CREATE TABLE `t_order` (`id` INT(11) NOT NULL AUTO_INCREMENT,`orderNo` VARCHAR(128) NOT NULL,`orderDate` DATETIME DEFAULT NULL,`orderUser` INT(11) DEFAULT NULL,`orderMoney` DOUBLE(10,2) DEFAULT NULL,`orderStatus` INT(11) DEFAULT NULL,PRIMARY KEY (`id`),UNIQUE KEY `orderNo` (`orderNo`),KEY `FK_order_user` (`orderUser`),CONSTRAINT `FK_order_user` FOREIGN KEY (`orderUser`) REFERENCES `t_user` (`id`)
) ENGINE=INNODB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;/*Data for the table `t_order` */INSERT  INTO `t_order`(`id`,`orderNo`,`orderDate`,`orderUser`,`orderMoney`,`orderStatus`) VALUES (4,'5eaab6146dc54e0482fdb8b6120c229b_20211025112519','2021-10-25 11:25:20',1,506.90,0),(5,'f5a22aac925d42eabc6b49c45a3eb74f_20211025113004','2021-10-25 11:30:04',1,48.95,0),(6,'8a245df4359e4224b531cf121c4acab3_20211025113019','2021-10-25 11:30:20',1,0.00,0),(7,'b521cd49ab2943f0bbc0630c95978f1c_20211025113039','2021-10-25 11:30:40',1,48.95,0),(8,'d4f366a82cd4491c9899b181753804b4_20211025113151','2021-10-25 11:31:52',1,48.95,0),(9,'8f5869a839f4483e947bd2c3163f3c23_20211025113159','2021-10-25 11:31:59',1,48.95,0),(10,'c5fcd95dbe7f49669f96b4ad6444ae6b_20211025120531','2021-10-25 12:05:32',1,147.95,0),(11,'6240ec3e5ac04e3583e1beb75a9e94ec_20211025120542','2021-10-25 12:05:42',1,147.95,0);/*Table structure for table `t_order_item` */CREATE TABLE `t_order_item` (`id` INT(11) NOT NULL AUTO_INCREMENT,`book` INT(11) DEFAULT NULL,`buyCount` INT(11) DEFAULT NULL,`orderBean` INT(11) DEFAULT NULL,PRIMARY KEY (`id`),KEY `FK_detail_book` (`book`),KEY `FK_detail_order` (`orderBean`),CONSTRAINT `FK_detail_book` FOREIGN KEY (`book`) REFERENCES `t_book` (`id`),CONSTRAINT `FK_detail_order` FOREIGN KEY (`orderBean`) REFERENCES `t_order` (`id`)
) ENGINE=INNODB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8;/*Data for the table `t_order_item` */INSERT  INTO `t_order_item`(`id`,`book`,`buyCount`,`orderBean`) VALUES (6,1,1,4),(7,2,2,4),(8,10,1,4),(9,3,5,4),(10,4,1,4),(11,2,1,5),(12,2,1,7),(13,2,1,8),(14,2,1,9),(15,1,1,10),(16,2,1,10),(17,1,1,11),(18,2,1,11);-- 图书
SELECT * FROM bookdb.`t_book`;
-- 用户
SELECT * FROM bookdb.`t_user`;
-- 订单 外键t_user(orderUser)
SELECT * FROM bookdb.`t_order`;
-- 订单详情 外键t_book(book),t_order(orderBean)
SELECT * FROM bookdb.`t_order_item`;
-- 购物车项 外键t_book(book),t_user(userBean)
SELECT * FROM bookdb.`t_cart_item`;

界面展示

用户登录界面

用户注册界面

首页

添加购物车

我的购物车

我的订单

功能说明

用户注册:会校验数据库用户是否存在,不存在则可以注册。
用户登录:用户登录后正常跳转主界面。
主界面:实现价格查询和添加购物车,可以进入购物车。
购物车:可以添加商品数量。
我的订单:可以看到订单的概况

Java web 2022跟学尚硅谷书城项目完整开源分享相关推荐

  1. Java web 2022跟学尚硅谷(十) 后端基础 书城

    Java web 2022跟学尚硅谷十 后端基础 书城 验证码kaptcha和缓存cookie 简单了解cookie 步骤 简单创建cookie的样例 代码 CookieServlet01 hello ...

  2. Java web 2022跟学尚硅谷(一) 前端基础

    2022版Java web跟学尚硅谷 B/S 软件的结构 HTML的基础标签 基础标签 页面划分标签 frameset iframe 总结 CSS 基本样式介绍 盒子模型 绝对定位与相对定位 页面布局 ...

  3. JavaWeb 尚硅谷书城项目

    书城项目第一阶段:表单验证 需求:         验证用户名:必须由字母,数字下划线组成,并且长度为 5 到 12 位         验证密码:必须由字母,数字下划线组成,并且长度为 5 到 12 ...

  4. Java进阶实战:人脸采集识别系统项目完整公开分享

    文章目录 一.人脸采集系统 1.人脸识别 1.1.使用说明 1.2.安装jar到本地仓库 1.3.开始使用 1.4.测试 2.图片上传 2.1.图片存储解决方案 2.2.阿里云OSS存储 2.2.1. ...

  5. java培训班教程视频最新尚硅谷Java培训全套教程

        尚硅谷Bank项目–0 5.尚硅谷全套JAVA教程–面试阶段–0 4.尚硅谷全套JAVA教程–JavaEE阶段–0 3.尚硅谷全套JAVA教程–JavaWEB阶段–0 2.尚硅谷全套JAVA教 ...

  6. 尚硅谷前端项目开发笔记

    尚硅谷前端项目开发笔记 B站视频直达,这个项目亮点在于所有 API 请求都并非在组件内编写,而是在组件内使用this.$store.dispatch() 派发任务,再由 Vuex(actions.mu ...

  7. 尚硅谷VUE项目-前端项目问题总结07--产品详情页【vuex-排他操作foreach-放大镜-轮播图-兄弟组件通信$bus-购物车-路由跳转传参-路由传参+会话存储】-游客身份-节流

    尚硅谷VUE项目-前端项目问题总结07---产品详情页 1.静态组件(详情页还未注册为路由组件) 2.发请求 3.vuex-获取产品详情信息 3.1放大镜 3.2 属性值[排他操作] 3.3轮播图[j ...

  8. 学java web需要学php吗_学JAVA WEB要先学什么

    最近许多刚刚初学Java Web开发的童鞋问小编为神马要学这么多东东,我们有必要来从更高层次看看我们所学的东西都是干什么的,所以今天讲讲开始学习Java Web开发之前你需要了解的知识. 互联网简介在 ...

  9. 学习java web感想_学了近一个月的java web 感想

    对于每天学习的新知识进行一定的总结,是有必要的. 之前我学的每一门知识,我都没有怎么总结自己的问题,也没有怎么去想想该怎样才能学的更好,把知识掌握的更牢固.从现在开始呢,我会每半个月,或每一个月总结总 ...

最新文章

  1. Seaborn使用lmplot函数可视化散点图并添加回归曲线、移除默认的回归曲线置信区间(Scatter plot with regression line、Remove CI band)
  2. Android在线开发工具 App Inventor
  3. 【Groovy】Groovy 动态语言特性 ( Groovy 中的变量自动类型推断以及动态调用 | Java 中必须为变量指定其类型 )
  4. ACM模板--邻接矩阵 无向图 搜索算法
  5. Ansible基本命令
  6. 前端学习(2549):模板解析指令
  7. 神经网络与深度学习——TensorFlow2.0实战(笔记)(二)(安装TensorFlow2.0)
  8. CSDN又力推一优秀开源项目jeecg,跨时代重构精华版发布
  9. 喜报!DT最新通用管理平台开源了
  10. ndk学习20: jni之OnLoad动态注册函数
  11. Excel2010学习笔记(二):公式函数篇
  12. jquery-ajax请求.NET MVC 后台
  13. Linux快速入门教程
  14. 惠普计算机图标不在桌面,我的电脑图标没了怎么办
  15. 内定抽奖小程序_Excel制作抽奖小程序,单人、多人抽奖只要三步就可实现
  16. 泰坦尼克号python数据分析统计服_Kaggle入门级赛题:泰坦尼克号生还者预测——数据分析篇...
  17. python列转行函数_python 列转行
  18. 《生活,是很好玩的》读书日记
  19. 虎牙直播分类图片爬虫
  20. dhcp snooping华为_华为交换机DHCP snooping

热门文章

  1. 公务用车补贴和办公通讯补贴个人所得税可以退税?
  2. vb.net cad 获取最后一个实体_10大机械设计软件对比,你最喜欢哪一个?
  3. 三步轻松安装量子化学软件OCRA到Windows11系统
  4. c语言函数输出输出型参数_c语言技巧多个输出参数
  5. 关于未来生物科学实验室株式会社正品鉴定系统
  6. 在Ubuntu 16.04 安装sogou 输入法详细讲解
  7. 阿里架构的中台架构的PPT分析
  8. 【IT软技能】零基础如何自学JAVA
  9. c#.net淘宝客基础api练手日记
  10. oracle实战学习记录